Где переменная предложения в запросе игнорируется - PullRequest
0 голосов
/ 16 декабря 2011

Новичок здесь. Когда я помещаю дату ('ГГГГ-ММ-ДД') в предложение WHERE, это прекрасно работает. Когда я заменяю его переменной, переданной с предыдущей страницы, предложение WHERE игнорируется. Это потому, что переменная еще не была создана?

<?php $name = $_POST["start"]; ?>

$query = "SELECT employees.first, employees.last, employees.street, employees.city,  
employees.a, employees.b,  
GROUP_CONCAT(empchecks.checknum ORDER BY empchecks.checkdate SEPARATOR '<br /> ') as  
checknum, 
GROUP_CONCAT(empchecks.checkdate ORDER BY empchecks.checkdate      
SEPARATOR '<br /> ')  
as checkdate 
FROM employees 
INNER JOIN empchecks ON employees.enum = empchecks.enum 
WHERE empchecks.checkdate >= '$start' GROUP BY empchecks.enum";  

Ответы [ 4 ]

3 голосов
/ 16 декабря 2011

Переменная $ start не существует. Попробуйте заменить его на $ name и посмотрите, работает ли он. Вы также должны использовать sprintf http://php.net/manual/en/function.sprintf.php для передачи переменных для запроса.

1 голос
/ 16 декабря 2011

Похоже, вы назначаете $_POST['start'] на $name, а не на $start, к которому вы обращаетесь позже.

0 голосов
/ 16 декабря 2011

написать этот фрагмент ($ _ POST), чтобы можно было использовать $ start вместо $ name

0 голосов
/ 16 декабря 2011

Ваш POST - "начало", но вы назначаете его "name"

Так что используйте $ name в вашем SQL ...

...