2015-12-04 3 views
1

Я пытаюсь работать с системой баз данных для голосования. У меня есть форма для отображения всех кандидатов на тип кандидата. Я все еще пытаюсь изучить это. Но на этот раз я хочу попробовать один тип кандидата, скажем, для Председателя, я хочу отобразить все имена кандидатов для этого типа в форме голосования. Тем не менее, есть ошибка в строке, где я объявляю запрос и запрос запроса, может кто-то знает, что это такое. Я очень уверен, что мой синтаксис верен.SQL QUERY SELECT INSIDE A FUNCTION

function returnAllFromTable($table) { 
      include 'connect.php'; 
      $data = array(); 
      $query = 'SELECT * FROM ' . $table. 'WHERE candidateId=1'; //ERROR 
      $mysql_query = mysql_query ($query, $conn); 

      if (! $mysql_query) { 
      die ('<a href="../../">Go Back</a><br>Unable to retrieve data from table ' . $table); 
      } else { 
      while ($row = mysql_fetch_array ($mysql_query)) { 
       $data [] = $row; 
      } 
      } 

      return $data; 
     } 
+0

Вы, вероятно, отсутствует пробел между именем таблицы и 'WHERE'. Попробуйте вызвать 'print_r ($ query)', чтобы увидеть, что на самом деле там. Кроме того, не используйте mysql-драйвер yada yada устаревший yada используйте mysqli или PDO. –

ответ

1

Как говорит @Darwin фон Corax, я уверен, что у вас есть проблемы между $table и WHERE

Ваш запрос:

$query = 'SELECT * FROM ' . $table. 'WHERE candidateId=1'; 

Если $table = 'Chairperson';

У вас есть:

'SELECT * FROM ChairpersonWHERE candidateId=1'; 

Ваш запрос должен быть:

$query = 'SELECT * FROM ' . $table. ' WHERE candidateId=1'; 
+0

спасибо! отличная помощь –

+0

@adrianquevada aasure ;-) –