2014-02-12 2 views
0

Этот код должен содержать таблицу столовых кошек. Однако он показывает пустую страницу. Кажется, что часть запроса не работает. Он не может перейти на 'var_dump($results)'. Однако я могу создать таблицу с комментариями кодов. Так в чем проблема ?Почему мой php ничего не показывает? (код включен)

<?php 
require_once "login.php"; 
$db_server = mysql_connect($db_hostname, $db_username, $db_password); 
if(!$db_server) 
    die("Unable to connect: ".mysql_error()); 
mysql_select_db($db_database, $db_server) or die("Unable to select a db: ".mysql_error()); 
/* 
$query = "CREATE TABLE cats 
(
    id SMALLINT NOT NULL AUTO_INCREMENT, 
    family VARCHAR(32) NOT NULL, 
    name VARCHAR(32) NOT NULL, 
    age TINYINT NOT NULL, 
    PRIMARY KEY (id) 
)"; 

mysql_query($query) or die("Create cats DB failed: ".mysql_error()); 
*/ 

$query = "DESCRIBE cats"; 
$results = mysql_query($query) 

var_dump($results); 

if(!$results) 
    die("Error-line22: ".mysql_error()); 
else 
    echo $results."<br />"; 

$rows = mysql_num_rows($results); 

echo "<table>"; 
echo " 
<tr> <th>Column</th> <th>Type</th> <th>NULL</th> <th>Key</th> </tr>"; 

for ($j = 0; $j < $rows; ++$j) 
{ 
    $row = mysql_fetch_row($results); 
    echo "<tr>"; 
    for ($k = 0; $k < 4; ++$k) 
     echo "<td>$row[$k]</td>"; 
    echo "</tr>"; 
} 

echo "</table>"; 

mysql_close($db_server); 
?> 
+0

В худшем случае попробуйте прокомментировать куски, чтобы узнать, можете ли вы сделать все это до конца и вывести _something_. Затем выясните, что вызывает проблему, добавив бит обратно. – Krease

+0

Еще лучше, из командной строки запустите 'php -l/path/to/your/file.php' и посмотрите, есть ли у него синтаксические ошибки. – dave

ответ

2

В строке mysql_query() отсутствует ';' в конце:

$query = "DESCRIBE cats"; 
$results = mysql_query($query); 

var_dump($results); 
+0

отлично. Благодарю. но как я могу его отладить? Я только начинаю изучать php. Однако я не могу найти хорошего отладчика. Только для этой ошибки. Без вывода чего-либо его трудно найти? – tqjustc

+1

Если вы можете, включите предупреждения об ошибках/предупреждениях на своем веб-сервере. Эти проблемы с синтаксисом обычно регистрируются как ошибка «Неожиданный T_STRING». Кроме того, большинство IDE должны иметь некоторую форму выделения синтаксиса, которая указывает на синтаксические ошибки. Я стараюсь использовать Netbeans или Eclipse на работе, но их можно выбирать. – Melkior

Смежные вопросы