Забыли пароль?
Запросите новый здесь.

Автор темы: IPB_Support
ID темы: 2290
Информация:
Тема содержит 11 сообщения, была просмотрена 19419 раз.
Просмотр темы
PHP-Fusion Russia » Веб-разработка » MySQL
 Распечатать тему
Изменение данных в базе данных путем UPDATE
IPB_Support
Есть запрос, ну не знаю, запрос это или просто код, но суть не в этом, ниже код:
Скачать исходники  Код
<?php
require 'connect.php';
$u_email=trim($_REQUEST['u_email']);
$u_qiwi=trim($_REQUEST['u_qiwi']);
$update_sql =("UPDATE users SET email='$u_email',qiwi='$u_qiwi' WHERE login='$u_login'");
mysql_query($update_sql) or die("Ошибка вставки" . mysql_error());
?>
<?php
$select_sql = "SELECT email,qiwi FROM users WHERE login='$u_login'";
$result = mysql_query($select_sql);
$row = mysql_fetch_array($result);
printf("<form action='/edit.spx' method='post' name='forma'>
<span>Новый емайл:</span><input class='val' type='text' name='u_email' maxlength='50' style='width:200px;' value=''>
<span>Новый киви:</span><input class='val' type='text' name='u_qiwi' maxlength='50' style='width:200px;' value=''>
<input class='btn_box' id='submit' type='submit' value='Редактировать запись'>
</form>",$row['email'],$row['qiwi']);
?>




он изменяет данные двух полей в таблице, но! изменяет их ,следующим образом:
если мы ввели данные для изменение email, а данные для изменения в qiwi не указали и нажали кнопку изменить, то данные в таблице меняются, но меняются только в email ,а qiwi записывается пустым значением!

Подскажите, как сделать что бы поля изменялись, в которые ввели данные для изменения.
 
Vova
IPB_Support написал:

Есть запрос, ну не знаю, запрос это или просто код, но суть не в этом, ниже код:
Скачать исходники  Код
<?php
require 'connect.php';
$u_email=trim($_REQUEST['u_email']);
$u_qiwi=trim($_REQUEST['u_qiwi']);
$update_sql =("UPDATE users SET email='$u_email',qiwi='$u_qiwi' WHERE login='$u_login'");
mysql_query($update_sql) or die("Ошибка вставки" . mysql_error());
?>
<?php
$select_sql = "SELECT email,qiwi FROM users WHERE login='$u_login'";
$result = mysql_query($select_sql);
$row = mysql_fetch_array($result);
printf("<form action='/edit.spx' method='post' name='forma'>
<span>Новый емайл:</span><input class='val' type='text' name='u_email' maxlength='50' style='width:200px;' value=''>
<span>Новый киви:</span><input class='val' type='text' name='u_qiwi' maxlength='50' style='width:200px;' value=''>
<input class='btn_box' id='submit' type='submit' value='Редактировать запись'>
</form>",$row['email'],$row['qiwi']);
?>




он изменяет данные двух полей в таблице, но! изменяет их ,следующим образом:
если мы ввели данные для изменение email, а данные для изменения в qiwi не указали и нажали кнопку изменить, то данные в таблице меняются, но меняются только в email ,а qiwi записывается пустым значением!

Подскажите, как сделать что бы поля изменялись, в которые ввели данные для изменения.


Загрузить источник  GeSHi: PHP
  1. <?php
  2. require 'connect.php';
  3. $u_email=trim($_REQUEST['u_email']);
  4. $u_qiwi=trim($_REQUEST['u_qiwi']);
  5.  
  6. if (!empty($u_email)) $update_sql =("UPDATE users SET email='$u_email' WHERE login='$u_login'");
  7.  
  8. mysql_query($update_sql) or die("Ошибка вставки" . mysql_error());
  9.  
  10. if (!empty($u_qiwi)) $update_sql =("UPDATE users SET qiwi='$u_qiwi' WHERE login='$u_login'");
  11.  
  12. mysql_query($update_sql) or die("Ошибка вставки" . mysql_error());
  13. ?>
  14. <?php
  15. $select_sql = "SELECT email,qiwi FROM users WHERE login='$u_login'";
  16. $result = mysql_query($select_sql);
  17. $row = mysql_fetch_array($result);
  18. printf("<form action='/edit.spx' method='post' name='forma'>
  19. <span>Новый емайл:</span><input class='val' type='text' name='u_email' maxlength='50' style='width:200px;' value=''>
  20. <span>Новый киви:</span><input class='val' type='text' name='u_qiwi' maxlength='50' style='width:200px;' value=''>
  21. <input class='btn_box' id='submit' type='submit' value='Редактировать запись'>
  22. </form>",$row['email'],$row['qiwi']);
  23. ?>
Добавлено за 0.038 секунд, используя GeSHi 1.0.8.10

Изменил(а) Vova, 06.08.2014 08:15
 
Web
IPB_Support
Vova, вот что выдает Ошибка вставкиQuery was empty
А если добавляю запрос
Скачать исходники  Код
$update_sql =("UPDATE users SET email='$u_email',qiwi='$u_qiwi' WHERE login='$u_login'");



работает, почему так?
 
Vova
IPB_Support написал:

Vova, вот что выдает Ошибка вставкиQuery was empty
А если добавляю запрос
Скачать исходники  Код
$update_sql =("UPDATE users SET email='$u_email',qiwi='$u_qiwi' WHERE login='$u_login'");



работает, почему так?


Query was empty - не задаеш запроса.
 
Web
IPB_Support
Vova, то есть не задаю?
Получается, что выше код будет работать если изначально поля пустые?
 
Vova
IPB_Support написал:

Vova, то есть не задаю?
Получается, что выше код будет работать если изначально поля пустые?


Загрузить источник  GeSHi: PHP
Добавлено за 0.038 секунд, используя GeSHi 1.0.8.10


Так напиши:

Загрузить источник  GeSHi: PHP
  1. if (!empty($u_email)) {
  2.  
  3. $update_sql =("UPDATE users SET email='$u_email' WHERE login='$u_login'");
  4.  
  5. mysql_query($update_sql) or die("Ошибка вставки" . mysql_error());
  6.  
  7. }
  8.  
  9. if (!empty($u_qiwi)) {
  10.  
  11. $update_sql =("UPDATE users SET qiwi='$u_qiwi' WHERE login='$u_login'");
  12.  
  13. mysql_query($update_sql) or die("Ошибка вставки" . mysql_error());
  14.  
  15. }
  16.  
Добавлено за 0.038 секунд, используя GeSHi 1.0.8.10

Изменил(а) Vova, 06.08.2014 10:49
 
Web
IPB_Support
Vova, все ровно чет не так, если допустим вводим в поле email а в qiwi нет то поле email меняется, а если наоборот то выдает ошибку , ту же что и была.
 
Vova
IPB_Support написал:

Vova, все ровно чет не так, если допустим вводим в поле email а в qiwi нет то поле email меняется, а если наоборот то выдает ошибку , ту же что и была.


поправил
 
Web
IPB_Support
Vova, блин спасибо большое) есть же люди добрые. Знаю что уже наглею, но есть еще небольшая просьба. Смотри, сейчас есть вот такой код:
Скачать исходники  Код
<table class="tabpayments">
<thead>
<tr>
<th scope="col" abbr="Starter">Имя пользовтаеля</th>
<th scope="col" abbr="Medium">Емайл пользовтаеля</th>
<th scope="col" abbr="Business">Реферал пользователя</th>
<th scope="col" abbr="Deluxe">QIWI пользовтаеля</th>
<th scope="col" abbr="Deluxe">IP</th>
</tr>
</thead>
<tbody>
<?php
$sql_top=mysql_query("SELECT login,email,ref,qiwi,user_ip FROM users WHERE login='$u_login'");
while($top_mics=mysql_fetch_row($sql_top)){
echo'
<tr>
<td class="top_t1">'.$top_mics[0].'</td>
<td class="top_t2">'.$top_mics[1].'</td>
<td class="top_t2">'.$top_mics[2].'</td>
<td class="top_t2">'.$top_mics[3].'</td>
<td class="top_t2">'.$top_mics[4].'</td>
</tr>';
}
?>
</tbody>
</table>


    <?php
    require 'connect.php';
    $u_email=trim($_REQUEST['u_email']);
    $u_qiwi=trim($_REQUEST['u_qiwi']);
   
    if (!empty($u_email)) {
     
    $update_sql =("UPDATE users SET email='$u_email' WHERE login='$u_login'");
     
    mysql_query($update_sql) or die("Ошибка вставки" . mysql_error());
     
    }
     
    if (!empty($u_qiwi)) {
     
    $update_sql =("UPDATE users SET qiwi='$u_qiwi' WHERE login='$u_login'");
     
    mysql_query($update_sql) or die("Ошибка вставки" . mysql_error());
     
    }
     

    ?>
    <?php
    $select_sql = "SELECT email,qiwi FROM users WHERE login='$u_login'";
    $result = mysql_query($select_sql);
    $row = mysql_fetch_array($result);
    printf("<form action='/edit.spx' method='post' name='forma'>

    <span>Новый емайл:</span><input class='val' type='text' name='u_email' maxlength='50' style='width:200px;' value=''>
   <br/>
    <span>Новый киви:</span><input class='val' type='text' name='u_qiwi' maxlength='50' style='width:200px;' value=''>
   <br/>
    <input class='btn_box' id='submit' type='submit' value='Редактировать запись'>

    </form>",$row['email'],$row['qiwi']);
    ?>




он выводит вот такое:
s018.radikal.ru/i519/1408/4c/88eaade1aac6.jpg

А я хотел бы вот так что б это выводило:
s14.radikal.ru/i187/1408/97/145017153612.jpg
после нажатие на редактировать, в этом же окне появилось такое
s013.radikal.ru/i322/1408/64/8febbc367dbb.jpg, соответственно вместо слов редактировать, появится сахранить
 
Vova
IPB_Support, напишу
Изменил(а) Vova, 09.08.2014 20:52
 
Web
IPB_Support
Vova, спасибо тебе )))
 

Поделиться этой темой
Социальные закладки: Vkontakte Odnoklassniki Mail.ru Facebook Google Tweet This
URL:
BBcode:
HTML:

Перейти на форум:
Похожие темы
Топ 5 пользователей форума
Alex Alex (1,239)   Zaxap Zaxap (1,090)   Vova Vova (877)   Pisatel Pisatel (678)   util util (666)