Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Помогите найти ошибку,пожалуйста
Форумы портала PHP.SU » » Вопросы новичков » Помогите найти ошибку,пожалуйста

Страниц (1): [1]
 

1. Настенька - 18 Декабря, 2011 - 18:07:00 - перейти к сообщению
Всем привет!
есть бд завуча школы, одно из заданий составить запрос какой предмет будет в заданном классе, в заданный день недели, на заданном уроке. Сам запрос работает, проверяла в phpMyadmin но когда пишу скрипт в ответ мне приходит цифра из $wod походу. Вот код скрипта:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. include ('connect.php');
  3. mysql_query("SET NAMES 'cp1251'");
  4. $wod = $_POST['id_wod'];
  5. $indp = $_POST['index_pup'];
  6. $numles = $_POST['num_les'];
  7. $sql="SELECT subject.name_subj
  8. FROM subject, timetable
  9. WHERE (
  10. timetable.id_subj = subject.id_subj
  11. AND timetable.id_wod = '$wod'
  12. AND timetable.index_pup = '$indp'
  13. AND timetable.num_les = '$numles'
  14. )";
  15. $result=mysql_query($sql) || die(mysql_error());
  16. echo $result;
  17. /*while ($subjinfo=mysql_fetch_array($result))
  18. {
  19. echo'<table border=1 width = 60% align=center > <tr>
  20.  
  21. <td width = 20%>Идентификатор предмета:  '.$subjinfo["name_subj"].'</td>
  22. ';
  23. }*/
  24. ?>
  25.  

закоменчен один из пробуемых мной вариантов
2. caballero - 18 Декабря, 2011 - 18:21:48 - перейти к сообщению
а где mysql_fetch_array или типа того
3. Slesher - 18 Декабря, 2011 - 19:04:56 - перейти к сообщению
resource mysql_query ( string query [, resource link_identifier] )
echo $result; будет возвращать resource.

попробуйте
PHP:
скопировать код в буфер обмена
  1. while ($subjinfo=mysql_fetch_array($result))
  2. {
  3. echo
  4. '<table border=1 width = 60% align=center > <tr>
  5. <td width = 20%>Идентификатор предмета:  '.$subjinfo["subject.name_subj"].'</td>
  6. ';
  7. }
4. Настенька - 18 Декабря, 2011 - 20:05:27 - перейти к сообщению
ок, сейчас попробую, если что не удивляйтесь я только учусь )
(Добавление)
caballero пишет:
а где mysql_fetch_array или типа того

там где закомменчено, я так пробовала, выдает ошибку
5. kappa - 18 Декабря, 2011 - 20:23:45 - перейти к сообщению
А если так:
PHP:
скопировать код в буфер обмена
  1. include ('connect.php');
  2. mysql_query("SET NAMES 'cp1251'");
  3. $wod = $_POST['id_wod'];
  4. $indp = $_POST['index_pup'];
  5. $numles = $_POST['num_les'];
  6. $sql="SELECT subject.name_subj
  7. FROM subject, timetable
  8. WHERE (
  9. timetable.id_subj = subject.id_subj
  10. AND timetable.id_wod = '$wod'
  11. AND timetable.index_pup = '$indp'
  12. AND timetable.num_les = '$numles'
  13. )";
  14. $result=mysql_query($sql) or die(mysql_error());
  15.  
  16. while ($row=mysql_fetch_assoc($result)) {
  17.  
  18. echo $row['name_subj'];
  19. }
6. Настенька - 18 Декабря, 2011 - 20:41:21 - перейти к сообщению
kappa пишет:
А если так:
PHP:
скопировать код в буфер обмена
  1. include ('connect.php');
  2. mysql_query("SET NAMES 'cp1251'");
  3. $wod = $_POST['id_wod'];
  4. $indp = $_POST['index_pup'];
  5. $numles = $_POST['num_les'];
  6. $sql="SELECT subject.name_subj
  7. FROM subject, timetable
  8. WHERE (
  9. timetable.id_subj = subject.id_subj
  10. AND timetable.id_wod = '$wod'
  11. AND timetable.index_pup = '$indp'
  12. AND timetable.num_les = '$numles'
  13. )";
  14. $result=mysql_query($sql) or die(mysql_error());
  15.  
  16. while ($row=mysql_fetch_assoc($result)) {
  17.  
  18. echo $row['name_subj'];
  19. }

спасибо спасибо спасибо спасибо!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Все сработало)))) если не сложно, можешь хоть как-нить объяснить. а то я тыкнуть-то тыкнула, а мало что поняла )
7. kappa - 18 Декабря, 2011 - 22:10:48 - перейти к сообщению
Делаете выборку из двух таблинц FROM subject, timetable

а subject.name_subj - это псевдоним таблицы и название поля
echo $row['name_subj']; - это выводим название нужного поля
Да что тут не понятного, почитайте уроки php.su и все будет сразу ясно.

 

Powered by ExBB FM 1.0 RC1