За последние 24 часа нас посетили 17829 программистов и 1719 роботов. Сейчас ищут 980 программистов ...

Прошу помощи в редактировании записей MySQL

Тема в разделе "Вопросы от блондинок", создана пользователем vova_b, 24 апр 2009.

  1. vova_b

    vova_b Активный пользователь

    С нами с:
    26 июн 2007
    Сообщения:
    21
    Симпатии:
    0
    Привет! Прошу помощи,вот есть скрипт
    Код (Text):
    1.  <?
    2. /* Скрипт показывает клиентов, которые яблоки любят больше чем апельсины */
    3.  
    4. /* Переменные для соединения с базой данных */
    5. $hostname = "localhost";
    6. $username = "ывп";
    7. $password = "ывпыв";
    8. $dbName = "ывп";
    9.  
    10. /* Таблица MySQL, в которой хранятся данные */
    11. $userstable = "users";
    12.  
    13. /* создать соединение */
    14. mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
    15. /* выбрать базу данных. Если произойдет ошибка - вывести ее */
    16. mysql_select_db($dbName) or die(mysql_error());
    17.  
    18. /* составить запрос, который выберет всех клиентов - яблочников */
    19. $query = "SELECT * FROM $userstable ";
    20. /* Выполнить запрос. Если произойдет ошибка - вывести ее. */
    21. $res = mysql_query($query) or die(mysql_error());
    22.  
    23. /* Как много нашлось таких */
    24. $number = mysql_num_rows($res);
    25.  
    26. /* Напечатать всех в красивом виде*/
    27. if ($number == 0) {
    28.   echo "<CENTER><P>Пользователей нет</CENTER>";
    29. } else {
    30.   echo "<CENTER><P>Всего пользователей в базе: $number<BR><BR>";
    31.   /* Получать по одной строке из таблицы в массив $row, пока строки не кончатся */
    32.   while ($row=mysql_fetch_array($res)) {
    33.     echo "Пользователь ".$row['login']."<BR>";
    34.     echo "Его Email: ".$row['email'];
    35.     echo "<BR><BR>";
    36.   }
    37.   echo "</CENTER>";
    38. }
    39. ?>
    Этот скрипт выводит всех пользователей из БД, сделать так что бы после каждой записи было 2 кномки: Редактировать и Удалить, ну и подскажите как описать что бы эти кнопки выполняли соответствующие действия,спасибо!
     
  2. R3VoLuT1OneR

    R3VoLuT1OneR Активный пользователь

    С нами с:
    16 апр 2009
    Сообщения:
    16
    Симпатии:
    0
    Как я понял вы ПХП ваще не знаете?
    Так как вы собрались что тоделать?
    Или вы ждете пока за вас все сделают?
     
  3. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    vova_b
    Вы не указали структуру таблицы. Поэтому буду рисовать ситацию по-своему.

    delete.php
    PHP:
    1.  
    2. <?php
    3. // Тут должно идти соединение с БД
    4. $email = isset ($_GET ['email']) ? $_GET ['email'] : null;
    5. if (!empty ($email)){
    6.     mysql_query ("DELETE FROM `". $userstable . "` WHERE email = '" . mysql_real_escape_string ($email) . "' LIMIT 1") or die (mysql_error());
    7.     echo 'Пользователь с email <strong>' . $email . '</strong> удалён';
    8. }
    9. ?>
    10.  
    С редактированием сложнее. Что именно нужно редактировать? Имя и email?
    Тогда почитайте про UPDATE в MySQL и формы в HTML.
     
  4. vova_b

    vova_b Активный пользователь

    С нами с:
    26 июн 2007
    Сообщения:
    21
    Симпатии:
    0
    Я пхп учу, я сделал, думал просто дадут идею варианта получше вот как я сделал:
    PHP:
    1.  <?php
    2. /* Скрипт показывает клиентов, которые яблоки любят больше чем апельсины */
    3.  
    4. /* Переменные для соединения с базой данных */
    5. $hostname = "localhost";
    6. $username = "вмывм";
    7. $password = "вымывм";
    8. $dbName = "ывмвымы";
    9.  
    10.  
    11.  
    12.  
    13.  
    14. /* Таблица MySQL, в которой хранятся данные */
    15. $userstable = "users";
    16.  
    17. /* создать соединение */
    18. mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
    19. /* выбрать базу данных. Если произойдет ошибка - вывести ее */
    20.  
    21.  
    22. if(!empty($_GET['id']))
    23. {
    24. $id=($_GET['id']);
    25. //echo $id;
    26. $query = "SELECT * FROM $userstable WHERE login='$id'";
    27. $res=mysql_query($query) or die(mysql_error());
    28.  
    29.  
    30. $row=mysql_fetch_array($res);
    31. $l=$row['login'];
    32. $e=$row['email'];
    33.  
    34. echo"
    35. <form method='post'>
    36. Имя:        <input name='login' type='text' value=$l /><br>
    37. Пароль:          <input name='pass' type='text'  /><br>
    38. Повторите пароль:<input name='pass2' type='text'  /><br>
    39. Email:           <input name='email' type='text' value=$e /><br>
    40. <form id='form1' name='form1' method='post' action=''>
    41.  <label>
    42.    <input type='submit' name='button' id='button' value='Сохранить' />
    43.  </label>
    44.      </form>
    45. ";
    46.  
    47. if ($_SERVER['REQUEST_METHOD'] == 'POST'){
    48. $login=trim($_POST['login']);
    49. $pass=trim($_POST['pass']);
    50. $email=trim($_POST['email']);
    51. }
    52.  
    53.  
    54. echo $login;
    55. echo $pass;
    56. echo $email;
    57.  
    58. mysql_query("UPDATE users
    59. SET login='$login', pass='$pass',email='$email'
    60. WHERE login='$id'");
    61.  
    62.  
    63.  
    64.  
    65.  
    66.  
    67. }
    68.  
    69. else{
    70.  
    71.  
    72.  
    73.  
    74. /* составить запрос, который выберет всех клиентов - яблочников */
    75. $query = "SELECT * FROM $userstable ";
    76. /* Выполнить запрос. Если произойдет ошибка - вывести ее. */
    77. $res = mysql_query($query) or die(mysql_error());
    78.  
    79. /* Как много нашлось таких */
    80. $number = mysql_num_rows($res);
    81.  
    82. /* Напечатать всех в красивом виде*/
    83. if ($number == 0) {
    84.   echo "<CENTER><P>Пользователей нет</CENTER>";
    85. } else {
    86.   echo "<CENTER><P>Всего пользователей в базе: $number<BR><BR>";
    87.   /* Получать по одной строке из таблицы в массив $row, пока строки не кончатся */
    88.   while ($row=mysql_fetch_array($res)) {
    89.     echo "Пользователь ".$row['login']."<BR>";echo ' [<a href="index.php?act=edit&id='.$row['login'].'">edit</a>]';
    90.     echo "Его Email: ".$row['email'];
    91.     echo "<BR><BR>";
    92.   }
    93.   echo "</CENTER>";
    94. }
    95. }
    96. ?>
    Это еще не до конца но уже основное есть