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]   

> Без описания
Petro
Отправлено: 12 Октября, 2010 - 17:17:46
Post Id



Гость


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


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




Доброго вечера!
Подскажите пожалуйста как ввести в запрос переменную?
вот так я умею:
$sql='show columns from customers'; //запрос для вывода имени столбцов
$sql1='select * from customers'; //запрос для вывода всей таблици
а как сделать:
$cnum='cnum';
$cust='customers';
$sql='show columns from $cust';
$sql1='select * from $cust';
$sql1='select $cnum from $cust';
просто если я так делаю то мне выводит ошибку Table 'base.$cust' doesn't exist
Зарание спасибо за ответ.


-----
Нет ничего более постоянного, чем временное.
 
 Top
garvey
Отправлено: 12 Октября, 2010 - 17:26:16
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 528
Дата рег-ции: Май 2010  
Откуда: Minsk


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




Вы такой ленивый: http://php.su/learnphp/datatypes/?string
 
 Top
HotBird
Отправлено: 12 Октября, 2010 - 17:28:11
Post Id



Гость


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


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




PHP:
скопировать код в буфер обмена
  1. $sql='show columns from '.$cust;
  2. $sql1='select * from '.$cust;
  3. $sql1='select '.$cnum.' from '.$cust;


-----
Человек, сделавший синтаксический анализатор PHP на одном регулярном выражении, займет достойное место среди гениев.
Качественный хостинг по доступной цене
 
 Top
jgptwmda
Отправлено: 12 Октября, 2010 - 18:54:02
Post Id


Новичок


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


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




заместо ' - " и всё
 
 Top
movEAX
Отправлено: 12 Октября, 2010 - 19:53:10
Post Id



Частый посетитель


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


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




Рискну предположить, используется мускуль. В таком случае советую погуглить на тему:
mysqli->prepare


-----
армия.. самое убогое место
 
 Top
Petro
Отправлено: 13 Октября, 2010 - 09:08:53
Post Id



Гость


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


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




HotBird, jgptwmda - спасибо!


-----
Нет ничего более постоянного, чем временное.
 
 Top
Petro
Отправлено: 21 Октября, 2010 - 17:12:10
Post Id



Гость


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


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




Добрый вечер!
не могу понять в чем проблема, возможно в этой записи: $r='select name from user where name= '.$user;
И выдает ошибку Unknown column 'Petro' in 'where clause'

при запросе в сам mysql все нормально выводит
select name
from user
where name='Petro';

CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2. $user= isset ($_POST['user']) ? trim($_POST['user']) : '';
  3. $pass= isset ($_POST['pass']) ? trim($_POST['pass']) : '';
  4.  
  5. if (!($user && $pass)) {echo 'vvedite imya i parol';} // проверка на ввод данных
  6.  
  7. else
  8. {
  9. $mshost="127.0.0.1"; //host
  10. $msuser="root"; //user
  11. $mspass="123456"; //password
  12.  
  13. $mscon=mysql_connect($mshost, $msuser, $mspass) or die(mysql_error());
  14. mysql_query('set names cp1251');
  15. mysql_query('set names utf-8');
  16.  
  17. $r=mysql_query('select name from user where name='.$user) or die(mysql_error());
  18. while($row=mysql_fetch_row($r))
  19. {
  20. echo $row[0];
  21. }
  22.  
  23. mysql_close($mscon);
  24. }
  25. ?>

(Отредактировано автором: 21 Октября, 2010 - 17:19:13)



-----
Нет ничего более постоянного, чем временное.
 
 Top
movEAX
Отправлено: 21 Октября, 2010 - 17:23:47
Post Id



Частый посетитель


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


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




Petro пишет:
$r=mysql_query('select name from user where name='.$user)

$r=mysql_query('select name from user where name=\''.$user.'\'')


-----
армия.. самое убогое место
 
 Top
OrmaJever
Отправлено: 21 Октября, 2010 - 23:03:17
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


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




Petro пишет:
не могу понять в чем проблема, возможно в этой записи: $r='select name from user where name= '.$user;
И выдает ошибку Unknown column 'Petro' in 'where clause'


Проблема с кавычками.
Весь sql Запрос должен быть в кавычках. Например
PHP:
скопировать код в буфер обмена
  1. $x = "SELECT * FROM table WHERE name='.$name.'"


В твоём же случаи sql запрос это 'select name from user where name= ' а $user это просто переменая. Она должна бытьв тех кавычках что и весь запрос.

Кавычки должны ити по очереди. ' " ' " и т.д. " ' " ' одинарные и двойные.

Например
PHP:
скопировать код в буфер обмена
  1. $x = 'SELECT * FROM table WHERE name=".$name."'

и
PHP:
скопировать код в буфер обмена
  1. $x = "SELECT * FROM table WHERE name='.$name.'"

Особой разницы не имеет

(Отредактировано автором: 21 Октября, 2010 - 23:04:07)



-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Petro
Отправлено: 22 Октября, 2010 - 11:35:32
Post Id



Гость


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


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




Как только я не крутил эту строчку, нет положительного результата ((
Может дело в чем то другом, я незнаю.
единственное что выводит Resource id #3 но это всёго лишь ссылка на объект (массив значений выборки) и я в свою очередб пытаюсь его вывести с помощью while, возможно while не работает из за того что в вывод попадает только одна строчка, foreach тоже отказался работать (

CODE (htmlphp):
скопировать код в буфер обмена
  1. <html>
  2. <body>
  3. <title>stranica vhoda<title>
  4.  <form action='vhod.php' method=POST >
  5.       <input name='user' value='' size='10' type='text'>Введите имя<br></input>
  6.       <input name='pass' value='' size='10' type='text'>Введите пароль<br></input>
  7.       <input type=submit value='Войти'>
  8.  </form>
  9. </body>
  10. </html>
  11.  
  12. <?php
  13. $user= isset ($_POST['user']) ? trim($_POST['user']) : '';
  14. $pass= isset ($_POST['pass']) ? trim($_POST['pass']) : '';
  15.  
  16. if ($user)
  17.  {
  18.   //echo 'Имя: ', $user;
  19.  } else { $a='Введите имя<br>'; echo $a;};
  20.  
  21. if ($pass)
  22.  {
  23.   //echo '<br>Пароль: ', $pass, '<br>';
  24.  } else { $b='Введите пароль'; echo $b;};
  25.  
  26.  
  27. if ($user && $pass)  // проверка на ввод данных
  28. {
  29. $mshost="127.0.0.1"; //host
  30. $msuser="root"; //user
  31. $mspass="123456"; //password
  32.  
  33. $mscon=mysql_connect($mshost, $msuser, $mspass) or die(mysql_error());
  34. mysql_query('set names cp1251');
  35. mysql_query('set names utf-8');
  36.  
  37. $w="select name from user where name = '.$user.'";
  38. $result=mysql_query($w) or die(mysql_error());
  39. while ($row = mysql_fetch_array($result))
  40. {
  41. echo $row[0];
  42. }
  43. echo $result;
  44. mysql_close($mscon);
  45. } else {echo '<br>nugno vvesti imya i parol';}
  46. ?>

(Добавление)
Вот и решилась моя проблема )))) Спасибо
// Заметка: если запрос возвращает только один ряд -- нет нужды в цикле.
И запрос заработал после того как я убрал '.'

$w=mysql_query("select name from user where name='$user'");

Спасибо всем за помощь.

(Отредактировано автором: 22 Октября, 2010 - 11:37:16)



-----
Нет ничего более постоянного, чем временное.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB