За последние 24 часа нас посетили 19265 программистов и 1608 роботов. Сейчас ищут 933 программиста ...

Подскажите, что делать ????

Тема в разделе "Прочие вопросы по PHP", создана пользователем rookie11, 17 сен 2013.

  1. rookie11

    rookie11 Новичок

    С нами с:
    5 сен 2013
    Сообщения:
    5
    Симпатии:
    0
    Предупреждение : mysql_fetch_assoc () ожидает параметр 1, в качестве экспертов, логические приведены в Z: \ главная \ локальный \ WWW \ климат \ Admin \ edit_articles.php на линии 35
    У вас ошибка в запросе; обратитесь к руководству, соответствующий вашему MySQL сервер версии за право синтаксиса около'' в строке 1



    <?php include_once ("blocks/bd.php" );?>

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>страница добовления нового каталога</title>
    <link href="style.css" rel="stylesheet" type="text/css">
    </head>
    <body>
    <table width="690" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" class="main_border">
    <? include_once ("blocks/wapka.php"); ?>
    <tr>
    <td><table width="690" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <? include_once ("blocks/left.php"); ?>
    <td valign="top">
    <?php

    if (isset($id))
    {
    $result = mysql_query ("SELECT title,id FROM articles");
    $myrow = mysql_fetch_assoc($result);
    do
    {
    printf ("<p><a href='edit_articles.php?id=%s'>%s</a></p>",$myrow["id"],$myrow["title"]);

    }
    while ($myrow = mysql_fetch_assoc($result));
    }
    else
    {

    $result = mysql_query ("SELECT * FROM articles WHERE id=$id");
    $myrow = mysql_fetch_assoc($result) or die (mysql_error ()) ;

    print <<<HERE
    <form name="form1" method="post" action="update_articles.php">
    <p>
    <label>Введите название<br>
    <input value="$myrow[title]" type="text" name="title" id="title">
    </label>
    </p>
    <p>
    <label>Введите краткое опесание<br>
    <input value="$myrow[meta_d]" type="text" name="meta_d" id="meta_d">
    </label>
    </p>
    <p>
    <label>Введите ключевые слова<br>
    <input value="$myrow[meta_k]" type="text" name="meta_k" id="meta_k">
    </label>
    </p>
    <p>
    <label>Введите дату добовления<br>
    <input value="$myrow[date]" name="date" type="text" id="date" value="2013-08-04">
    </label>
    </p>
    <p>
    <label>Введите краткое опесания каталога<br>
    <textarea name="description" id="description" cols="40" rows="5">$myrow[description]</textarea>
    </label>
    </p>
    <p>
    <label>Введите полный текст каталога<br>
    <textarea name="text" id="text" cols="40" rows="20">$myrow[text]</textarea>
    </label>
    </p>
    <p>
    <label>Введите на складе<br>
    <input value="$myrow[sclad]" type="text" name="sclad" id="sclad">
    </label>
    </p>

    <input name="id" type="hidden" value="$myrow[id]">
    <p>
    <label>
    <input type="submit" name="submit" id="submit" value="Сохронить изминение">
    </label>
    </p>
    </form>
    HERE;
    }
    ?>
    </td>
    </tr>
    </table></td>
    </tr>
    <? include ("blocks/niz.php"); ?>
    </table>
    </body>
    </html>
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    А что означает ваш ник?
     
  3. rookie11

    rookie11 Новичок

    С нами с:
    5 сен 2013
    Сообщения:
    5
    Симпатии:
    0
    новичок
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    вы очень жестоко перевели ошибку, смысл которой сводится только к тому, что запрос обломился и в ответе сидит не эксперт, а логические =) а именно не ресурс ответа мускула а булевый тип скорее всего с false значением. В некоторых случаях возвращается true, что тоже может приводить к такой ошибке.
     
  5. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Для начала не приводить на профильном ресурсе кривопереведенные онлайн-переводчиком тексты ошибок. Оставляйте на английском. Не бойтесь, для программистов это второй родной язык...ну как минимум его технический вариант.
     
  6. rookie11

    rookie11 Новичок

    С нами с:
    5 сен 2013
    Сообщения:
    5
    Симпатии:
    0

    Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in Z:\home\localhost\www\climat\admin\edit_articles.php on line 35
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

    Добавлено спустя 1 минуту 30 секунд:
    35 ст $myrow = mysql_fetch_assoc($result) or die (mysql_error ()) ;
     
  7. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    я вроде подробро описал от чего возникает ошибка =)
     
  8. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.819
    Симпатии:
    1.333
    Адрес:
    Лень
    $result = mysql_query ("SELECT title,id FROM articles");
    $myrow = mysql_fetch_assoc($result);
    do
    {
    printf ("<p><a href='edit_articles.php?id=%s'>%s</a></p>",$myrow["id"],$myrow["title"]);

    }
    while ($myrow = mysql_fetch_assoc($result));
    }
    ебануться можно

    Добавлено спустя 1 минуту 3 секунды:
    Культурно над гавнокодидь епт
     
  9. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    ненене
    я ж говорил
    покажи как надо
     
  10. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.819
    Симпатии:
    1.333
    Адрес:
    Лень
    Код (PHP):
    1. $result[] = mysql_query ("SELECT title,id FROM articles WHERE LIMIT 0,1");
    2. $result[] = mysql_query ("SELECT title,id FROM articles WHERE LIMIT 1,2");
    3. $result[] = mysql_query ("SELECT title,id FROM articles WHERE LIMIT 2,3");
    4. $result[] = mysql_query ("SELECT title,id FROM articles WHERE LIMIT 3,4");
    5. $result[] = mysql_query ("SELECT title,id FROM articles WHERE LIMIT 4,5");
    6. $result[] = mysql_query ("SELECT title,id FROM articles WHERE LIMIT 5,6");
    7. $result[] = mysql_query ("SELECT title,id FROM articles WHERE LIMIT 6,7");
    8. $result[] = mysql_query ("SELECT title,id FROM articles WHERE LIMIT 7,8");
    9. $result[] = mysql_query ("SELECT title,id FROM articles WHERE LIMIT 8,9");
    10. $result[] = mysql_query ("SELECT title,id FROM articles WHERE LIMIT 9,10"); 
    вот так над! хд
     
  11. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    чувак, ну это не смешно.

    так не надо:
    Код (PHP):
    1. $result = mysql_query ("SELECT title,id FROM articles");
    2. $myrow = mysql_fetch_assoc($result);
    3. do {
    4.   printf ("<p><a href='edit_articles.php?id=%s'>%s</a></p>",$myrow["id"],$myrow["title"]);
    5. }
    6. while ($myrow = mysql_fetch_assoc($result)){
    7. }
    надо так:
    Код (PHP):
    1. $result = mysql_query ("SELECT title,id FROM articles");
    2. while ($myrow = mysql_fetch_assoc($result)) {
    3.   echo "<p><a href='edit_articles.php?id={$myrow["id"]}'>" . htmlspecialchars($myrow["title"]) . "</a></p>";
    4. }
     
  12. rookie11

    rookie11 Новичок

    С нами с:
    5 сен 2013
    Сообщения:
    5
    Симпатии:
    0
    спс всем! проблему не решил, но спасибо за критику и совет !!! буду разбираться(((
     
  13. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    чтобы решить проблему, нужно глянуть запрос как он уходит в бд
    я так понимаю проблема с этим запросом:
    Код (Text):
    1. $result = mysql_query ("SELECT * FROM articles WHERE id=$id");
    соответственно надо заменить код на такой:
    Код (Text):
    1.  
    2. $query = "SELECT * FROM articles WHERE id=$id";
    3. echo "ЗАПРОС ТАКОЙ: [[$query]]<br>";
    4. $result = mysql_query ($query);
    после чего будет видно например, что запрос выглядит так:
    ЗАПРОС ТАКОЙ: [[SELECT * FROM articles WHERE id=]]
    что будет значить, что айдишник у тебя пустой. Хотя конечно если он у тебя пустой то ты в эту ветку ифа не попадаешь.
    Откуда ты берешь $id?