За последние 24 часа нас посетили 93830 программистов и 6228 роботов. Сейчас ищут 1611 программистов ...

Заполнение базы данных

Тема в разделе "PHP для новичков", создана пользователем Dmitry123, 30 окт 2018.

  1. Dmitry123

    Dmitry123 Новичок

    С нами с:
    24 окт 2018
    Сообщения:
    14
    Симпатии:
    0
    Здравствуйте, есть страница для добавления нового комментария к заметке на сайт. Заполнение работает, но в список передается только одно значение 'art_id'. Как передать все?
    PHP:
    1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    2. <html>
    3. <head>
    4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    5. <title></title>
    6. </head>
    7. <body>
    8. <?php
    9. include ("menu.html");
    10. include ('Connections/mysitedb.php');
    11. if ($mysitedb) {echo "All rigth";} else {echo "Connections error";}
    12. $query = "SELECT art_id FROM comments";
    13. $resultt = mysqli_query ($mysitedb, $query);
    14. $edit_comm = mysqli_fetch_array ($resultt);
    15. ?>
    16. <h1>Добавьте комментарий<h1>
    17. <form action="" method=post>
    18. <div align="center">
    19.               <br />Автор<br />
    20.               <input type="text" name="author" size="40" id = "author">
    21.               <br />Комментарий<br />
    22.               <textarea rows="10" name="comment" cols="40" id = "comment"></textarea>
    23.               <br /><input type="hidden" name = "created" id = "created"
    24. value ="<?php echo date("Y-m-d");?>"/>
    25. <br /><select name="art_id" size="3" multiple>
    26.           <option> <?php echo $edit_comm['art_id'];?> </option>
    27.        
    28. </select>
    29.               <br /><input type="submit" value="Отправить" name="ok">
    30.            
    31. </div>
    32. </form>
    33. <a href="blog.php">На главную страницу сайта</a>
    34. </body>
    35. </html>
    36.  
    37. <?php
    38. if (($_POST['ok'])) {
    39.       if (!empty($_POST['author']) && !empty($_POST['comment']))
    40.     {
    41.     $created = $_POST['created'];
    42.     $author = $_POST['author'];
    43.     $comment = $_POST['comment'];
    44.     $art_id = $_POST['art_id'];
    45.     $querycomm = "INSERT INTO comments (created, author, comment, art_id) VALUES('$created', '$author', '$comment', '$art_id' )";
    46.     $resultcomm = mysqli_query($mysitedb,$querycomm);
    47.     echo "Ваши данные успешно добавлены";
    48.     }
    49.     else{echo "Ваши данные не добавлены";
    50.     }
    51.                     }
    52. ?>
     
  2. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    Это не дата создания а дата открытия страницы.
    Включи вывод ошибок. Может поля не того формата или называются по другому.
     
  3. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.840
    Симпатии:
    1.338
    Адрес:
    Лень
    HTML:
    1. <select name="art_id[]" size="3" multiple>
     
  4. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.874
    Симпатии:
    753
    Адрес:
    Татарстан
    добавляется скорее всего все.... (посмотрите в БД)
    выводите только art_id
    а в общей - ужасный г-код, SQL инъекции, мешанина оформления с кодом, множественное подключение к БД и прочие "прелести"
     
    MouseZver нравится это.
  5. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.840
    Симпатии:
    1.338
    Адрес:
    Лень
  6. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    И то правда
     
    MouseZver нравится это.
  7. Dmitry123

    Dmitry123 Новичок

    С нами с:
    24 окт 2018
    Сообщения:
    14
    Симпатии:
    0
    Бд заполняется, мне надо в список вывести все айдишники, а у меня выводится только 1.
     
  8. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.840
    Симпатии:
    1.338
    Адрес:
    Лень
    PHP:
    1. while ( $row = mysqli_fetch_array ( $result, MYSQLI_ASSOC ) )
    2. {
    3.     echo "<option>$row[art_id]</option>";
    4. }