За последние 24 часа нас посетили 59456 программистов и 1760 роботов. Сейчас ищут 1120 программистов ...

отправка информации без перезагрузки страницы!

Тема в разделе "PHP и базы данных", создана пользователем kolya7774, 20 сен 2011.

  1. kolya7774

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

    С нами с:
    3 мар 2011
    Сообщения:
    98
    Симпатии:
    0
    Всем, привет.
    Пишу сам скрипт комментариев. И возникло у меня несколько вопросов, ответы на которые не могу найти(.

    Вопросы:

    1) Как сделать так, чтобы после отправки комментария (после нажатия кнопки "submit"), страница открылась не в самом вверху (сначала), а в том месте где добавился комментарий?
    у меня так написано:
    PHP:
    1. echo "<html><head><meta http-equiv='Refresh' content='0; url='view_post_articles?id=$id'></head>></html>";
    2. exit();
    2) Когда комментарий уже добавился в базу и вывелся на сайте, при перезагрузке страницы ("обновить текущую страницу"), комментарий снова добавляется в базу, и уже второй раз выводится на сайте?

    Вот моя форма комментария:
    PHP:
    1. <form action="" method="post" name="form_comments" onsubmit="return validate_form();">
    2.  
    3. <p><label>Ваше имя: <span style="color:red">*</span></label><br /><input name="author" type="text" size="30" maxlength="100" /></p>
    4.  
    5. <p><label>Адрес e-mail: </label><br /><input name="author_email" type="text" size="30" maxlength="50" />
    6.  
    7. <p><label>Текс комментария: <span style="color:red">*</span></label><br /><textarea name="author_text" cols="50" rows="5"></textarea></p>
    8.  
    9. <input name="id" type="hidden" value="<?php echo $id; ?>" />
    10. <p><input name="sub_com" type="submit" value="Комментировать" /></p>
    11. </form>
     
  2. krow7

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

    С нами с:
    12 авг 2009
    Сообщения:
    398
    Симпатии:
    0
    Адрес:
    из Азии
    1)
    перед нужным комментарием дописывайте якорь: <a name="lastComment"></a>. и при запросе http://site.ru/somepage#lastComment перескочит именно туда.
     
  3. kolya7774

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

    С нами с:
    3 мар 2011
    Сообщения:
    98
    Симпатии:
    0
    вот мой вывод статьи:
    PHP:
    1. do
    2.                         {
    3.                             printf ("<div class='comments_div'>
    4.                                      <p class='comments_author_date'>Комментарий добавил(a): %s<br />Дата добавления: %s</p>
    5.                                      <p>%s</p></div>", $myrow['author'], $myrow['date'], $myrow['author_text']);
    6.                             }
    7.                         while ($myrow = mysql_fetch_array ($result));
    8.                         }
    как это сделать правильно, у меня не выходит!?
     
  4. krow7

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

    С нами с:
    12 авг 2009
    Сообщения:
    398
    Симпатии:
    0
    Адрес:
    из Азии
    PHP:
    1. <?php
    2. printf("<a name=\"lastComment\"></a>...
     
  5. siiXth

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

    С нами с:
    14 мар 2010
    Сообщения:
    1.447
    Симпатии:
    1
    редирект на тот же адрес страницы нужно
    header location - гуглим
     
  6. krow7

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

    С нами с:
    12 авг 2009
    Сообщения:
    398
    Симпатии:
    0
    Адрес:
    из Азии
    а я что-то думал, думал, как второй вопрос реализовать и здесь же попробовал после добавления ответа обновить страницу. выдает, что нельзя снова добавить комментарий.
    видимо, как-то со временем связано
     
  7. siiXth

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

    С нами с:
    14 мар 2010
    Сообщения:
    1.447
    Симпатии:
    1
    в детстве роняли ?
    header ("Location: $url");
     
  8. kolya7774

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

    С нами с:
    3 мар 2011
    Сообщения:
    98
    Симпатии:
    0
    большое спасибо, друзья, за быстрые ответы, сейчас попробую и если что отпишу
     
  9. krow7

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

    С нами с:
    12 авг 2009
    Сообщения:
    398
    Симпатии:
    0
    Адрес:
    из Азии
    это вы к чему?
     
  10. kolya7774

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

    С нами с:
    3 мар 2011
    Сообщения:
    98
    Симпатии:
    0
    спасибо!
     
  11. siiXth

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

    С нами с:
    14 мар 2010
    Сообщения:
    1.447
    Симпатии:
    1
    к тому что я написал точный ответ , а автор продолжает рассуждать о способах реализации
     
  12. krow7

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

    С нами с:
    12 авг 2009
    Сообщения:
    398
    Симпатии:
    0
    Адрес:
    из Азии
    siiXth
    но я-то не автор :D
     
  13. siiXth

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

    С нами с:
    14 мар 2010
    Сообщения:
    1.447
    Симпатии:
    1
    все кто не правы - авторы
    з.ы. переработался =D у мня прям ща нервный тик на глазу =D
     
  14. topas

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

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    siiXth
    бергамот исключи
     
  15. siiXth

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

    С нами с:
    14 мар 2010
    Сообщения:
    1.447
    Симпатии:
    1
    что надо в .htaccess прописать ?
     
  16. topas

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

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    Код (Text):
    1.  
    2. RewriteCond %{TEA}%{COMPOSITION} !bergamia
    3. RewriteRule .* - [ F ]
     
  17. siiXth

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

    С нами с:
    14 мар 2010
    Сообщения:
    1.447
    Симпатии:
    1
    =D
    я даже не знаю что такое бергамот , не то что бы его употреблять =D

    тик временный и вызван суточным сидением за компом , ну ещё и простудой от которой не хочется спать наверное =D
    а .htaccess записал , пригодится когда брошу курить XD
     
  18. topas

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

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36