Устранение ошибки «неожиданная ошибка $ end» - PullRequest
0 голосов
/ 31 октября 2008

Я новичок в PHP и пытаюсь заставить работать следующий код:

<?php
include 'config.php';
include 'opendb.php';

$query = "SELECT name, subject, message FROM contact";
$result = mysql_query($query);

while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
    echo "Name :{$row['name']} <br>" .
         "Subject : {$row['subject']} <br>" . 
         "Message : {$row['message']} <br><br>";
"ARTICLE_NO :{$row['ARTICLE_NO']} <br>" .
"ARTICLE_NAME :{$row['ARTICLE_NAME']} <br>" .
"SUBTITLE :{$row['SUBTITLE']} <br>" .
"CURRENT_BID :{$row['CURRENT_BID']} <br>" .
"START_PRICE :{$row['START_PRICE']} <br>" .
"BID_COUNT :{$row['BID_COUNT']} <br>" .
"QUANT_TOTAL :{$row['QUANT_TOTAL']} <br>" .
"QUANT_SOLD :{$row['QUANT_SOLD']} <br>" .
"STARTS :{$row['STARTS']} <br>" .
"ENDS :{$row['ENDS']} <br>" .
"ORIGIN_END :{$row['ORIGIN_END']} <br>" .
"SELLER_ID :{$row['SELLER_ID']} <br>" .
"BEST_BIDDER_ID :{$row['BEST_BIDDER_ID']} <br>" .
"FINISHED :{$row['FINISHED']} <br>" .
"WATCH :{$row['WATCH']} <br>" .
"BUYITNOW_PRICE :{$row['BUYITNOW_PRICE']} <br>" .
"PIC_URL :{$row['PIC_URL']} <br>" .
"PRIVATE_AUCTION :{$row['PRIVATE_AUCTION']} <br>" .
"AUCTION_TYPE :{$row['AUCTION_TYPE']} <br>" .
"INSERT_DATE :{$row['INSERT_DATE']} <br>" .
"UPDATE_DATE :{$row['UPDATE_DATE']} <br>" .
"CAT_1_ID :{$row['CAT_1_ID']} <br>" .
"CAT_2_ID :{$row['CAT_2_ID']} <br>" .
"ARTICLE_DESC :{$row['ARTICLE_DESC']} <br>" .
"DESC_TEXTONLY :{$row['DESC_TEXTONLY']} <br>" .
"COUNTRYCODE :{$row['COUNTRYCODE']} <br>" .
"LOCATION :{$row['LOCATION']} <br>" .
"CONDITIONS :{$row['CONDITIONS']} <br>" .
"REVISED :{$row['REVISED']} <br>" .
"PAYPAL_ACCEPT :{$row['PAYPAL_ACCEPT']} <br>" .
"PRE_TERMINATED :{$row['PRE_TERMINATED']} <br>" .
"SHIPPING_TO :{$row['SHIPPING_TO']} <br>" .
"FEE_INSERTION :{$row['FEE_INSERTION']} <br>" .
"FEE_FINAL :{$row['FEE_FINAL']} <br>" .
"FEE_LISTING :{$row['FEE_LISTING']} <br>" .
"PIC_XXL :{$row['PIC_XXL']} <br>" .
"PIC_DIASHOW :{$row['PIC_DIASHOW']} <br>" .
"PIC_COUNT :{$row['PIC_COUNT']} <br>" .
"ITEM_SITE_ID :{$row['ITEM_SITE_ID']};
 }

include 'closedb.php';

?> 

Однако я получаю эту ошибку:

Parse error: syntax error, unexpected $end in C:\Programme\EasyPHP 2.0b1\www\test.php on line 56

Я также хотел бы знать, если, возможно, существует более простой способ получения записей MySQL вместо ввода вручную?

редактирование:

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

Parse error: syntax error, unexpected T_STRING in C:\Programme\EasyPHP 2.0b1\www\test.php on line 51

Извините, я не знаю, как сделать цвета в коде.

Ответы [ 3 ]

7 голосов
/ 31 октября 2008

Редактировать

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


У вас есть точка с запятой в середине вашей строки, две строки после эха.

image

Кроме того, в конце строки отсутствует двойная кавычка.

image


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

while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
  foreach($row as $field=>$value)
  {
    echo "$field: {$value} <br />";
  }
}
2 голосов
/ 31 октября 2008

Для второй части вашего вопроса, вы можете сделать это, если имена полей все логичны:

while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
  foreach($row as $key => $value)
  {
    echo "$key: $value\n";
  }
}
0 голосов
/ 31 октября 2008

Изменить: Ваш запрос SQL возвращает только 3 поля. Но вы пытаетесь получить доступ гораздо больше, чем это. Попробуйте «SELECT *», если вы хотите вернуть все поля таблицы. В противном случае убедитесь, что вы выбрали поля, которые пытаетесь прочитать (вероятно, не потому, что вы получаете ошибку, просто наблюдение).

Синтаксис раскраски

include 'closedb.php';

?>

указывает, что в строке отсутствует закрывающая кавычка. Линия

"ITEM_SITE_ID :{$row['ITEM_SITE_ID']};

подтверждает это.

Также линия

"Message : {$row['message']} <br><br>";

заканчивает конкатенацию строк. Точка с запятой, вероятно, должна быть точкой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...