За последние 24 часа нас посетили 15777 программистов и 1544 робота. Сейчас ищут 886 программистов ...

Не передается имя из двух слов

Тема в разделе "PHP для новичков", создана пользователем AndreyDyomin, 13 янв 2009.

  1. AndreyDyomin

    AndreyDyomin Активный пользователь

    С нами с:
    2 дек 2008
    Сообщения:
    12
    Симпатии:
    0
    Здравствуйте!
    Я тут совсем недавно, так что просьба сильно не бить. :)

    Изучаю РНР около месяца. Пишу простенький скрипт опроса, вроде все работает, но есть одно "но". Посмотреть результаты можно только у тех, у кого имя написано одним словом. Если из двух - передается только первое слово и, как следствие, все наперекосяк. Чтобы лучше понять - о чем я, посмотрите, пожалуйста, сам опрос:
    http://adprogrammer.freetzi.com/prog/opros/opros.php

    А вот кусок кода, где, как я предполагаю, сама проблема.


    <form action="result.php" method="get">
    <center><h2>Просмотреть результаты опроса:</h2>
    HERE;

    $db = mysql_connect('localhost','******','*******');
    mysql_select_db('******',$db);
    $result = mysql_query("SET NAMES cp1251",$db);
    $result = mysql_query("SELECT name,number FROM otvetlist");
    $myrow = mysql_fetch_array($result);

    echo <<<HERE
    <table border='0' width='700px'>
    <tr><td colspan='3' bgcolor="#CCCCCC"><p><center><strong>РЕЗУЛЬТАТЫ:</center></strong></p></td></tr>
    <tr><td width='70px' class=border><p><center><strong>Номер опроса:</center></strong></p></td>
    <td width='200px' class=border><p><center><strong>Имя участника:</center></strong></p></td>
    <td class=border><p><center><strong>Результаты:</center></strong></p></td></tr>
    HERE;
    do {
    echo <<<HERE
    <tr><td class=border><p><center>$myrow[number]</center></p></td>
    <td class=border><p><center>$myrow[name]</center></p></td>
    <td class=border><p><a href=result.php?result_number=$myrow[number]&result_name=$myrow[name]>Тут может быть любое название ссылки</a></p>
    </td></tr>
    HERE;
    }
    while ($myrow = mysql_fetch_array($result));
    echo "</table><br /><input type='submit' name='submit' id='submit' value='Посмотреть' /></form></center>";
     
  2. AndreyDyomin

    AndreyDyomin Активный пользователь

    С нами с:
    2 дек 2008
    Сообщения:
    12
    Симпатии:
    0
    Разобрался! :( Все дело в <<<HERE - предупреждали меня, что это очень капризный момент...
     
  3. Frozen

    Frozen Активный пользователь

    С нами с:
    20 окт 2008
    Сообщения:
    540
    Симпатии:
    0
    Адрес:
    Москва
    PHP:
    1.  
    2. <?php
    3. $db = mysql_connect('localhost','******','*******');
    4. mysql_select_db('******',$db);
    5. $result = mysql_query("SET NAMES cp1251",$db);
    6. $result = mysql_query("SELECT name,number FROM otvetlist");
    7. $myrow = mysql_fetch_array($result);
    8.  
    9. echo "
    10. <table border='0' width='700px'>
    11. <tr><td colspan='3' bgcolor='#CCCCCC'><p><center><strong>РЕЗУЛЬТАТЫ:</center></strong></p></td></tr>
    12. <tr><td width='70px' class=border><p><center><strong>Номер опроса:</center></strong></p></td>
    13. <td width='200px' class=border><p><center><strong>Имя участника:</center></strong></p></td>
    14. <td class=border><p><center><strong>Результаты:</center></strong></p></td></tr>
    15. ";
    16.  
    17. while ($myrow = mysql_fetch_array($result)) {
    18.     echo '<tr><td class=border><p><center>'.$myrow['number'].'</center></p></td>
    19.             <td class=border><p><center>'.$myrow['name'].'</center></p></td>
    20.             <td class=border><p><a href="result.php?result_number='.$myrow['number'].'&result_name='.$myrow['name'].'">Тут может быть любое название ссылки</a></p>
    21.             </td>
    22.           </tr>';
    23. }
    24. ?>"</table><br /><input type='submit' name='submit' id='submit' value='Посмотреть' /></form></center>";
    вначале поста куча ненужной информации
    конструкции do while несуществует, забудь
    $myrow['name'] <- кавычки обязательны
    href="" <- кавычки обязательны
     
  4. obsrv

    obsrv Активный пользователь

    С нами с:
    2 окт 2008
    Сообщения:
    238
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
     
  5. ATI

    ATI Активный пользователь

    С нами с:
    3 янв 2008
    Сообщения:
    254
    Симпатии:
    0
    Адрес:
    Москва
    Опять попов, это он блин юзает конструкцию do, while.
     
  6. djunkie

    djunkie Активный пользователь

    С нами с:
    19 ноя 2008
    Сообщения:
    134
    Симпатии:
    0
  7. Koc

    Koc Активный пользователь

    С нами с:
    3 мар 2008
    Сообщения:
    2.253
    Симпатии:
    0
    Адрес:
    \Ukraine\Dnepropetrovsk
    а чем вам цикл с пост-условием не угодил?
     
  8. obsrv

    obsrv Активный пользователь

    С нами с:
    2 окт 2008
    Сообщения:
    238
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
  9. AndreyDyomin

    AndreyDyomin Активный пользователь

    С нами с:
    2 дек 2008
    Сообщения:
    12
    Симпатии:
    0
    Ага, Попов, его видеокурс щас смотрю.
    А что, лучше использовать
    while
    endwhile
     
  10. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
    AndreyDyomin
    лучше его вообще не смотреть
     
  11. AndreyDyomin

    AndreyDyomin Активный пользователь

    С нами с:
    2 дек 2008
    Сообщения:
    12
    Симпатии:
    0
    Не, ну вообще-то начинал я с книги Энди Харриса "PHP/MySQL для НАЧИНАЮЩИХ"...
    А что ж так категорично насчет Попова? :)
     
  12. Многочисленные жертвы прошли через этот форум. Скоро сделаем что бы при упоминании Попова и некоторых шаблонных конструкций, характерных для его уроков, пользователь автоматически банился.
     
  13. ATI

    ATI Активный пользователь

    С нами с:
    3 янв 2008
    Сообщения:
    254
    Симпатии:
    0
    Адрес:
    Москва
    :lol: