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

Форум PHP

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

 

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

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

тема: Parse error: syntax error, unexpected T_ELSE
 
 автор: franko   (20.04.2011 в 19:01)   письмо автору
 
 

добрый день!
можете указать, что неверно в коде
ошибка Parse error: syntax error, unexpected T_ELSE
<?php 
$result11 
mysql_query("SELECT * from universities_specialities WHERE id_university='$id_university'"$db);
if (!
$result11)
{
echo 
"<p>Запрос на выборку данных из базы не прошел. </p>";
}

if (
mysql_num_rows($result11) > 0)

$myrow11 mysql_fetch_array($result11);
$id_speciality $myrow11[id_speciality];
    
while (
$myrow mysql_fetch_array($result));
{
$result12 mysql_query("SELECT * from specialities WHERE id_speciality='$id_speciality'"$db);
if (!
$result12)
{
echo 
"<p>Запрос на выборку данных из базы не прошел. </p>";
exit (
mysql_error()); 
}

if (
mysql_num_rows($result12) > 0)

{
$myrow12 mysql_fetch_array($result12);
do
{
printf ("%s %s<br>"$myrow["kod"], $myrow["title"]);
}
while (
$myrow12 mysql_fetch_array($result12));
}
else 
{
echo 
"<p>Информация по запросу не может быть извлечена - в таблице нет записей.</p>";
exit ();
}
}
else 
{
echo 
"<p>Информация по запросу не может быть извлечена - в таблице нет записей.</p>";
exit ();
}
?>

  Ответить  
 
 автор: parczynski   (20.04.2011 в 19:08)   письмо автору
 
   для: franko   (20.04.2011 в 19:01)
 

else не используется в конструкции while
while ($myrow = mysql_fetch_array($result));

и если я правильно понял чего вы хотите то точка с запятой в этой строчке тоже не нужна

  Ответить  
 
 автор: franko   (20.04.2011 в 19:30)   письмо автору
 
   для: parczynski   (20.04.2011 в 19:08)
 

<?php 
$result11 
mysql_query("SELECT * from universities_specialities WHERE id_university='$id_university'"$db);
if (!
$result11)
{
echo 
"<p>Запрос на выборку данных из базы не прошел. Напишите об этом администратору tinisto@mail.ru <br> <strong>Код ошибки:</strong></p>";
}

if (
mysql_num_rows($result11) > 0)

$myrow11 mysql_fetch_array($result11);

while (
$myrow mysql_fetch_array($result11));
$id_speciality $myrow11[id_speciality];
{
$result12 mysql_query("SELECT * from specialities WHERE id_speciality='$id_speciality'"$db);
if (!
$result12)
{
echo 
"<p>Запрос на выборку данных из базы не прошел. Напишите об этом администратору tinisto@mail.ru <br> <strong>Код ошибки:</strong></p>";
exit (
mysql_error()); 
}

if (
mysql_num_rows($result12) > 0)

{
$myrow12 mysql_fetch_array($result12);
do
{
printf ("%s %s<br>"$myrow12["kod"], $myrow12["title"]);
}
while (
$myrow12 mysql_fetch_array($result12));
}
}
?>

ошибки теперь нет.
но while ($myrow = mysql_fetch_array($result11)); не работает. вытаскивает только одно значение.

  Ответить  
 
 автор: cheops   (20.04.2011 в 20:39)   письмо автору
 
   для: franko   (20.04.2011 в 19:30)
 

Так и должно быть, так как цикл пробегает до конца каждый раз перезаписывая переменную $myrow. Нужно убрать после цикла while() точку с запятой и добавить фигурные кавычки с кодом, который должен выполняться на каждой итерации цикла
<?php
  
...
  while (
$myrow mysql_fetch_array($result11))
  {
    ...
  }
  ...
?>

  Ответить  
 
 автор: franko   (20.04.2011 в 21:32)   письмо автору
 
   для: cheops   (20.04.2011 в 20:39)
 

<?php
$result11 = mysql_query("SELECT * from universities_specialities WHERE id_university='$id_university'", $db);
if (!$result11)
{
echo "<p>Запрос на выборку данных из базы не прошел. Напишите об этом администратору tinisto@mail.ru <br> <strong>Код ошибки:</strong></p>";
}

if (mysql_num_rows($result11) > 0)

$myrow11 = mysql_fetch_array($result11);

while ($myrow = mysql_fetch_array($result11))
{
$id_speciality = $myrow11[id_speciality];
$result12 = mysql_query("SELECT * from specialities WHERE id_speciality='$id_speciality'", $db);
if (!$result12)
{
echo "<p>Запрос на выборку данных из базы не прошел. Напишите об этом администратору tinisto@mail.ru <br> <strong>Код ошибки:</strong></p>";
exit (mysql_error());
}

if (mysql_num_rows($result12) > 0)

{
$myrow12 = mysql_fetch_array($result12);
do
{
printf ("%s %s<br>", $myrow12["kod"], $myrow12["title"]);
}
while ($myrow12 = mysql_fetch_array($result12));
}
}
?>

ИСПРАВИЛ. НО ВОТ в $id_speciality = $myrow11[id_speciality]; заносится одна и тоже величина

  Ответить  
 
 автор: franko   (20.04.2011 в 21:33)   письмо автору
 
   для: franko   (20.04.2011 в 21:32)
 

<?php 
 $result11 
mysql_query("SELECT * from universities_specialities WHERE id_university='$id_university'"$db);
 if (!
$result11)
 {
 echo 
"<p>Запрос на выборку данных из базы не прошел. Напишите об этом администратору tinisto@mail.ru <br> <strong>Код ошибки:</strong></p>";
 }

 if (
mysql_num_rows($result11) > 0)

 
$myrow11 mysql_fetch_array($result11);

 while (
$myrow mysql_fetch_array($result11))
 {
 
$id_speciality $myrow11[id_speciality];
 
$result12 mysql_query("SELECT * from specialities WHERE id_speciality='$id_speciality'"$db);
 if (!
$result12)
 {
 echo 
"<p>Запрос на выборку данных из базы не прошел. Напишите об этом администратору tinisto@mail.ru <br> <strong>Код ошибки:</strong></p>";
 exit (
mysql_error()); 
 }

 if (
mysql_num_rows($result12) > 0)

 {
 
$myrow12 mysql_fetch_array($result12);
 do
 {
 
printf ("%s %s<br>"$myrow12["kod"], $myrow12["title"]);
 }
 while (
$myrow12 mysql_fetch_array($result12));
 }
 }
 
?>


ИСПРАВИЛ. НО ВОТ в $id_speciality = $myrow11[id_speciality]; заносится одна и тоже величина

  Ответить  
 
 автор: cheops   (20.04.2011 в 21:46)   письмо автору
 
   для: franko   (20.04.2011 в 21:33)
 

Совершенно верно, если нужно, чтобы эта величина изменялась, нужно следующую строку оформить через цикл while
$myrow11 = mysql_fetch_array($result11);
А весь последующий код заключить в фигурные скобки этого цикла.

  Ответить  
 
 автор: franko   (21.04.2011 в 08:15)   письмо автору
 
   для: cheops   (20.04.2011 в 21:46)
 

Работает. спасибо за помощь

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

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