Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Чтение данным с таблицы по критериям

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Dark_Knight
Отправлено: 26 Декабря, 2013 - 21:24:02
Post Id


Новичок


Покинул форум
Сообщений всего: 49
Дата рег-ции: Дек. 2013  


Помог: 0 раз(а)




В $row['Nickname']...$row['CompID'] ничего не записывается, хотя выдает результат, что запись найдена.
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $nickname = $_GET['nickname'];
  3. $kills = $_GET['kills'];
  4. $deaths = $_GET['deaths'];
  5. $ratio = $kills/$deaths;
  6. $model = $_GET['model'];
  7. $rang = $_GET['rang'];
  8. $exp = $_GET['exp'];
  9. $compid = $_GET['compid'];
  10. mysql_connect('$host', '$login', '$pass') or die(mysql_error());
  11. $rs = mysql_query(sprintf("SELECT * FROM KillInfoDB WHERE Nickname='%s'",$nickname));
  12. $a = mysql_num_rows($rs);
  13. if ($a > 0)
  14. {
  15. $rsa = mysql_query(sprintf("SELECT * FROM KillInfoDB WHERE Nickname='%s' AND CompID='%d'",$nickname,$compid));
  16. $ar = mysql_num_rows($rsa);
  17. if ($ar > 0)
  18. {
  19. while($row = mysql_fetch_array($rsa))
  20. {
  21. $row['Nickname'];
  22. $row['Kills'];
  23. $row['Deaths'];
  24. $row['Ratio'];
  25. $row['Model'];
  26. $row['Rang'];
  27. $row['Exp'];
  28. $row['CompID'];
  29. }
  30. echo $row['Nickname'] . "<br />";
  31. echo $row['Kills'] . "<br />";
  32. echo $row['Deaths'] . "<br />";
  33. echo $row['Ratio'] . "<br />";
  34. echo $row['Model'] . "<br />";
  35. echo $row['Rang'] . "<br />";
  36. echo $row['Exp'] . "<br />";
  37. echo $row['CompID'] . "<br />";
  38. $unickname = $nickname;
  39. $ukills = $kills + $row['Kills'];
  40. $udeaths = $deaths + $row['Deaths'];
  41. $uratio = $ukills/$udeaths;
  42. if($model !== $row['Model'])
  43. {
  44. $umodel = $model;
  45. }
  46. else
  47. {
  48. $umodel = $row['Model'];
  49. }
  50. $uexp = $exp + $row['Exp'];
  51. if($uexp >= 0 and $uexp <= 500)
  52. {
  53. $urang = 'Rookie';
  54. }
  55. if($uexp > 500 and $uexp <= 1000)
  56. {
  57. $urang = 'Soldier';
  58. }
  59. $ucompid = $row['CompID'];
  60. echo "Статистика отредактирована";
  61. }
  62. else
  63. {
  64. echo "Данный ник уже есть в базе. Добавление его невозможно";
  65. }
  66. }
  67. else
  68. {
  69. $strSQL = "INSERT INTO KillInfoDB(Nickname, Kills, Deaths, Ratio, Model,Rang,Exp,CompID) VALUES('$nickname','$kills','$deaths','$ratio','$model','$rang','$exp','$compid')";
  70. mysql_query($strSQL) or die (mysql_error());
  71. echo "Ник добавлен в базу";
  72. }
  73.  
  74. ?>

(Отредактировано автором: 26 Декабря, 2013 - 21:43:56)

 
 Top
KingStar
Отправлено: 26 Декабря, 2013 - 21:25:27
Post Id



Участник


Покинул форум
Сообщений всего: 1889
Дата рег-ции: Авг. 2011  
Откуда: Беларусь


Помог: 69 раз(а)




и что???


-----
То что программа работает, не означает что она написана правильно!
 
 Top
Dark_Knight
Отправлено: 26 Декабря, 2013 - 21:44:10
Post Id


Новичок


Покинул форум
Сообщений всего: 49
Дата рег-ции: Дек. 2013  


Помог: 0 раз(а)




Исправил.
 
 Top
KingStar
Отправлено: 26 Декабря, 2013 - 21:55:29
Post Id



Участник


Покинул форум
Сообщений всего: 1889
Дата рег-ции: Авг. 2011  
Откуда: Беларусь


Помог: 69 раз(а)






-----
То что программа работает, не означает что она написана правильно!
 
 Top
Dark_Knight
Отправлено: 26 Декабря, 2013 - 22:09:00
Post Id


Новичок


Покинул форум
Сообщений всего: 49
Дата рег-ции: Дек. 2013  


Помог: 0 раз(а)




PHP:
скопировать код в буфер обмена
  1. array(18) { [0]=> string(2) "38" ["Id"]=> string(2) "38" [1]=> string(11) "Dark_Knight" ["Nickname"]=> string(11) "Dark_Knight" [2]=> string(2) "12" ["Kills"]=> string(2) "12" [3]=> string(2) "10" ["Deaths"]=> string(2) "10" [4]=> string(3) "1.2" ["Ratio"]=> string(3) "1.2" [5]=> string(1) "1" ["Model"]=> string(1) "1" [6]=> string(5) "Owner" ["Rang"]=> string(5) "Owner" [7]=> string(1) "2" ["Exp"]=> string(1) "2" [8]=> string(1) "2" ["CompID"]=> string(1) "2" }

(Добавление)
Исправил ошибку. Надо было убрать while
 
 Top
resik
Отправлено: 26 Декабря, 2013 - 22:39:09
Post Id



Новичок


Покинул форум
Сообщений всего: 51
Дата рег-ции: Дек. 2013  


Помог: 0 раз(а)




Dark_Knight пишет:
PHP:
скопировать код в буфер обмена
  1. array(18) { [0]=> string(2) "38" ["Id"]=> string(2) "38" [1]=> string(11) "Dark_Knight" ["Nickname"]=> string(11) "Dark_Knight" [2]=> string(2) "12" ["Kills"]=> string(2) "12" [3]=> string(2) "10" ["Deaths"]=> string(2) "10" [4]=> string(3) "1.2" ["Ratio"]=> string(3) "1.2" [5]=> string(1) "1" ["Model"]=> string(1) "1" [6]=> string(5) "Owner" ["Rang"]=> string(5) "Owner" [7]=> string(1) "2" ["Exp"]=> string(1) "2" [8]=> string(1) "2" ["CompID"]=> string(1) "2" }


Не совсем понятно как вы записываете.
PHP:
скопировать код в буфер обмена
  1.  
  2. while($row = mysql_fetch_array($rsa))
  3. {
  4. echo '<pre>'; print_r($row); echo '</pre>'; // Добавьте. Более читаемый просмотр массива
  5. /* что тут происходит?)
  6. $row['Nickname'];
  7. $row['Kills'];
  8. $row['Deaths'];
  9. $row['Ratio'];
  10. $row['Model'];
  11. $row['Rang'];
  12. $row['Exp'];
  13. $row['CompID'];*/
  14. }
 
 Top
KingStar
Отправлено: 26 Декабря, 2013 - 22:47:07
Post Id



Участник


Покинул форум
Сообщений всего: 1889
Дата рег-ции: Авг. 2011  
Откуда: Беларусь


Помог: 69 раз(а)




PHP:
скопировать код в буфер обмена
  1. while($row = mysql_fetch_array($rsa))
  2. {
  3.       echo $row['Nickname']."<br />";
  4.       echo $row['Kills']."<br />";
  5.       echo  $row['Deaths']."<br />";
  6.       echo $row['Ratio']."<br />";
  7.       echo $row['Model']."<br />";
  8.       echo $row['Rang']."<br />";
  9.       echo $row['Exp']."<br />";
  10.       echo $row['CompID']."<br />";
  11. }


-----
То что программа работает, не означает что она написана правильно!
 
 Top
resik
Отправлено: 27 Декабря, 2013 - 00:36:40
Post Id



Новичок


Покинул форум
Сообщений всего: 51
Дата рег-ции: Дек. 2013  


Помог: 0 раз(а)




Ну так выводятся данные или нет?

Покажите вывод, добавив в цикл while
CODE (php):
скопировать код в буфер обмена
  1. echo '<pre>'; print_r($row); echo '</pre>';


CODE (htmlphp):
скопировать код в буфер обмена
  1. $nickname = $_GET['nickname'];

Определение переменой напрямую из гет и пост не фильтруя стало безопасно? Не понял

(Отредактировано автором: 27 Декабря, 2013 - 00:37:22)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Работа с СУБД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB