Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Не могу сделать mysq_query SELECT WHERE
 
 автор: chepikmas   (10.12.2010 в 22:06)   письмо автору
 
 

Всем привет, мне нужно выполнить следующий запрос, он работает замечательно:

$sql=mysql_query("SELECT id,login,date,balans FROM users WHERE refer1='$user'",$db);
$arr=mysql_fetch_array($sql);

НОООООООООООО
Мне нужно его выполнить так:

$n=1;
$sql=mysql_query("SELECT id,login,date,balans FROM users WHERE refer.$n=$user",$db);
$arr=mysql_fetch_array($sql);

так не получается, сколько не пытаюсь не могу, попробовал все мне известные, но правильный способ не знаю, и не могу найти...

  Ответить  
 
 автор: Trianon   (10.12.2010 в 22:15)   письмо автору
 
   для: chepikmas   (10.12.2010 в 22:06)
 

перед тем, как делать mysql_query - сделайте echo

Хотя это в любом случае фэйл.
В описании таблицы устраивать массивы полей не следует.
В БД данные в горизонталь не кладут.

  Ответить  
 
 автор: chepikmas   (10.12.2010 в 23:01)   письмо автору
 
   для: Trianon   (10.12.2010 в 22:15)
 

>перед тем, как делать mysql_query - сделайте echo
>
>Хотя это в любом случае фэйл.
>В описании таблицы устраивать массивы полей не следует.
>В БД данные в горизонталь не кладут.

Простите не понял, мне нужно сделать запрос по русски : Выбрать поля:поле поле поле, где поле REFER1 = имя пользователя, как зделать так что бы инициализировать часть поля в запросе например REFER и добавить к нему значение переменной, a=1, что бы получилось что-то вроде
SELECT * FROM table WHERE 'refer'.'$a'=имя пользователя and 'refer'.$b'=имя пользователя

  Ответить  
 
 автор: Trianon   (10.12.2010 в 23:06)   письмо автору
 
   для: chepikmas   (10.12.2010 в 23:01)
 

>Простите не понял,
что именно? Как echo сделать?

>мне нужно сделать запрос по русски :
Я и в первый раз расслышал хорошо.

  Ответить  
 
 автор: chepikmas   (10.12.2010 в 23:10)   письмо автору
 
   для: Trianon   (10.12.2010 в 23:06)
 

Так подскажите мне пожалуйста как задать значение поля скажем так REFER(1,2,3)

через переменную

  Ответить  
 
 автор: nikita2206   (11.12.2010 в 17:45)   письмо автору
 
   для: chepikmas   (10.12.2010 в 22:06)
 

Точку убери.
Затея идиотская.

  Ответить  
 
 автор: Trianon   (11.12.2010 в 19:04)   письмо автору
 
   для: nikita2206   (11.12.2010 в 17:45)
 

а ведь теперь деятель так и не поймет, почему её не надо было ставить...

  Ответить  
 
 автор: nikita2206   (11.12.2010 в 19:19)   письмо автору
 
   для: Trianon   (11.12.2010 в 19:04)
 

Лучше пусть объяснит, зачем она там.

  Ответить  
 
 автор: Trianon   (11.12.2010 в 20:08)   письмо автору
 
   для: nikita2206   (11.12.2010 в 19:19)
 

так ведь теперь вообще ничего не станет объяснять. Зачем?.. Так и уйдет с получившимся кодом.

  Ответить  
 
 автор: chepikmas   (12.12.2010 в 16:38)   письмо автору
 
   для: Trianon   (11.12.2010 в 19:04)
 

Уважаемый, наверное вы не поняли чего либо, если начали говорить про echo, гогда я вопрошал про mysql_query, а всем остальным спасибо

  Ответить  
 
 автор: Trianon   (12.12.2010 в 16:51)   письмо автору
 
   для: chepikmas   (12.12.2010 в 16:38)
 

>Уважаемый, наверное вы не поняли чего либо, если начали говорить про echo, гогда я вопрошал про mysql_query, а всем остальным спасибо

Я понял, что проблема у Вас с тем, что Вы не представляете, как правильно сформировать строку для mysql_query()

Не представляете Вы это потому, что путаетесь между двумя уровнями языковых потоков (php и sql),
а также потому чо плохо знаете синтаксис и семантику строковых операций в php.

Поскольку на данный (вернее - на тот) момент, Вашей локальной задачей было не исполнить абы какой непонятный запрос к БД, а правильно сформировать текст этого самого запроса, я и предложил заменить mysql_query на echo . Просто для того, чтобы понять, что и как делает Ваш код. После этого проблема лишней точки вышла бы на передний план, и была бы решена Вами тут же.

К сожалению, в процесс ввязался nikita2206, просто показав Вам решение. Он вроде бы и пожалел, но было уже поздно.

Почему это плохо? Потому что столкнувшись с похожей проблемой в следующий раз, Вы точно также не будете знать, что делать. А разобравшись, смогли бы преодолевать сложности самостоятельно.


Это всё, если закрыть глаза на то, что поля по принципу ref1, ref2, ref3 в таблице создавать нельзя.

  Ответить  
 
 автор: chepikmas   (14.12.2010 в 05:19)   письмо автору
 
   для: Trianon   (12.12.2010 в 16:51)
 

А, теперь то я вас понял, насчет того что нельзя возражу, у меня в таблице три поля реф1 реф2 реф3...

просто мне нужно было осуществить функцию

function($reflevel="1",$user,$db){
$query=("select id from users where refer(и тут добавить значение переменной $reflevel)=$user",$db);
}

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования