PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (32): В начало « ... 21 22 23 24 [25] 26 27 28 29 ... » В конец

> Найдено сообщений: 480
MBmusic Отправлено: 21 Марта, 2012 - 15:10:18 • Тема: дважды записывает в базу... • Форум: Вопросы новичков

Ответов: 9
Просмотров: 516
хотя с инклудом на обработчик все норм......я для проверки обработчик записывал прямо в инддексный файл все равно два раза в базу записывает((
MBmusic Отправлено: 20 Марта, 2012 - 21:15:29 • Тема: дважды записывает в базу... • Форум: Вопросы новичков

Ответов: 9
Просмотров: 516
вот весь код файла в последствии чего инклудится тот проблемный файл с комментариями:

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3.     // подключаем файл настроек
  4.     include 'config.php';
  5.    
  6.         if ($_GET['id'])
  7.            {
  8.               include './modules/forum/router_comments.php';             
  9.            }
  10.         else
  11.            {
  12.        
  13.     $res = mysql_query("SELECT * FROM forum ORDER BY id DESC");
  14.        
  15.         if(mysql_num_rows($res) == 0)
  16.            {
  17.            }
  18.         else
  19.            {
  20.               while($row = mysql_fetch_array($res))
  21.                      {
  22.                          ?>  
  23.                          <form action="" name="post" method="post">
  24.                             <a href="<?PHP echo '?id='.$row['id'].'&page=forum'; ?>"><div class="post">
  25.                                       <div class="zagolovok_osn" align="justify"><?PHP echo $row['post_name']; ?></div>
  26.                                    <div class="div_niz_posts">
  27.                                       <div class="bottom_time_com">
  28.                                              <div class="bottom_com_com_time"><?PHP echo $row['date'].' в '.$row['date_time']; ?></div>
  29.                                                  <div class="bottom_com_com" align="right">Комментарів: 0</div>
  30.                                           </div>
  31.                    </div>                                  
  32.                                 </div>
  33.                                 </a>
  34.              </form>                     
  35.                          <?PHP
  36.                          }
  37.            }
  38.            }
  39.          
  40.  
  41.  
  42. ?>
MBmusic Отправлено: 20 Марта, 2012 - 20:44:15 • Тема: дважды записывает в базу... • Форум: Вопросы новичков

Ответов: 9
Просмотров: 516
ну это ничего не меняет......все равно безрезультатно...
ппц, вроде бы все ок, тупо не понимаю как оно может не работать...??!!!
MBmusic Отправлено: 20 Марта, 2012 - 18:53:18 • Тема: дважды записывает в базу... • Форум: Вопросы новичков

Ответов: 9
Просмотров: 516
че за триггер?)) если вы о переключателе свитч, то там тоже все норм......вот код индексового файла:

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. ///////////////////////////////////////////////////////////////////////////////
  4. ///   Главная страница сайта к которому подключены все основные модули сайта   ///
  5. ///////////////////////////////////////////////////////////////////////////////
  6.  
  7. //подключаем конфигурационный файл
  8.    include './config.php';
  9.  
  10. //подключаем конфигурационный файл
  11.    include './variables.php';    
  12.  
  13.    ob_start();
  14.  
  15. //подключаем навигационную панель
  16.    include './skins/tpl/page/navigation/navigation.tpl';
  17.  
  18.    $content = ob_get_contents();  
  19.    ob_end_clean();    
  20.    
  21.    // переключатель между страницами
  22.    switch($GET['page'])
  23.       {
  24.           // главная страница (страница приветствия)
  25.       case 'home':
  26.          include './modules/home/router.php';
  27.           break;
  28.          
  29.           // страница форума
  30.           case 'forum':
  31.          include './modules/forum/router.php';  
  32.           break;
  33.          
  34.           // страница скачек
  35.           case 'down':
  36.          include './modules/download/router.php';  
  37.           break;
  38.          
  39.           // обратно страница с приветствием
  40.           default:
  41.          include './modules/home/router.php';
  42.           break;
  43.           }      
  44.          
  45.  
  46.    ob_start();
  47.          
  48. // подключаем контроллер
  49.    include './modules/forum/router_controller.php';
  50.  
  51.    $forum = ob_get_contents();  
  52.    ob_end_clean();  
  53.  
  54.    
  55.  
  56.  
  57.    
  58. ?>
MBmusic Отправлено: 20 Марта, 2012 - 17:33:04 • Тема: дважды записывает в базу... • Форум: Вопросы новичков

Ответов: 9
Просмотров: 516
ок, тогда вот участок обработки и самой формы, хотя повторюсь что все работает нормально!

вот обработка данных:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $com_name = $_POST['com_name'];
  4. $com_post = nl2br($_POST['com_post']);
  5.                
  6.                
  7. $post_id = $_GET['id'];
  8.                                 $immage_location = "./skins/images/avatar/default_avatar_128.gif";
  9.                                
  10. $date_com = date("d.m.y");
  11. $date_time_com = date("G:i");
  12.  
  13. if (isset($_POST['com_submit']))
  14.    {
  15.        if ($com_name&&$com_post)
  16.           {                                                        
  17.                 $queryreg_add = mysql_query("INSERT INTO op (name) VALUES ('$com_name')") or die(mysql_error());
  18.                 header ('Location: ?id='.$_GET['id'].'&page=forum#form');                                
  19.            }   
  20.        else
  21.            {
  22.                  echo "<div style='color:red; padding-left:10px;'>Не всі поля заповнені, або заповнені не вірно!</div>";
  23.             }    
  24.    }
  25. ?>



а вот сама форма:
CODE (html):
скопировать код в буфер обмена
  1. <a name="form"></a>
  2. <form action="" name="post" method="post">
  3. <table style="padding-left:10px; padding-top:10px; font:normal 14px/18px 'Trebuchet MS', Arial, Helvetica, sans-serif;">
  4. <tr>
  5. <td>Ваше Ім'я:</td>
  6. </tr>
  7.  <tr>
  8. <td class="name_com_inp"><input type="text" name="com_name"></td>
  9. </tr>
  10. <tr>
  11. <td>Коментар:</td>
  12. </tr>
  13. <tr>
  14. <td class="text_com_inp"><textarea size="35" type="text" rows="5" cols="32" name="com_post"></textarea></td>
  15. </tr>
  16. <tr height="60">
  17. <td><input class="button_com" type="submit" value="Опубліковати" name="com_submit"></td>
  18. </tr>
  19. </table>
  20. </form>

(Добавление)
кстате вот нашел тему в инете с похожей проблемой:
http://www.php[dot]ru/forum/viewtopic.php?t=34545

но чето толком и ничего не понял прочитав ее...
MBmusic Отправлено: 20 Марта, 2012 - 16:57:09 • Тема: дважды записывает в базу... • Форум: Вопросы новичков

Ответов: 9
Просмотров: 516
при нажатии сабмит записывает содержимое два раза......(((

короч со криптом записи в базу все ок......не выкупаю в чем проблема)
у меня есть индексовая страница на которой есть переключатель между страницами сайта, типа шаблонами......по умолчанию стоит главная home, когда пользователь переходит на другую страницу, предположим это у нас страница называется forum на ней там есть какието записи из базы по соответствующему id...

ну типо так

PHP:
скопировать код в буфер обмена
  1. if ($_GET['id'])
  2. {
  3. // здесь мы переходим на шаблон комментов что бы прокоментировать эту запись по соответствующему id (собственно где и возникает эта проблема)
  4. include './modules/forum/router_comments.php';
  5. }
  6. else
  7. {
  8. // тут вывод этих самых записей из базы
  9. ...
  10. }


вот както так, когда выбрана запись, пользователя перебрасывает гет параметр на комментарии, и там моя проблема с двойной записью......

что бы сразу не задавали разных вопросов относительно скрипта рабочий/нерабочий......скажу сразу что он рабочий, так как я создавал левый файл на серваке закидывал этот скрипт и проверял отдельно от всего моего сайта, все работало как и должно работать!

тупо не выкупаю как такое может быть!!!
MBmusic Отправлено: 16 Марта, 2012 - 20:38:19 • Тема: записывает в базу дважды......( • Форум: Вопросы новичков

Ответов: 2
Просмотров: 134
сделал так как вы описали выше, не помогло......хотя по сути это то же самое что и у меня было, только в правильной форме) но там дело в другом, не могу найти ошибку...
MBmusic Отправлено: 16 Марта, 2012 - 17:27:32 • Тема: записывает в базу дважды......( • Форум: Вопросы новичков

Ответов: 2
Просмотров: 134
в общем незнаю почему так выходит, уже кучу раз просмотрел код и не выкупаю в чем проблема......при заполнении форм и нажатии сабмит должно записывать в базу, оно то записывает но сразу дважды) заполнил форму и записало в базу одно и тоже два раза, не пойму почему...

вот форма
CODE (html):
скопировать код в буфер обмена
  1.    <form action="" name="post" method="post">
  2.                   <table style="padding-left:10px; padding-top:10px; font:normal 14px/18px 'Trebuchet MS', Arial, Helvetica, sans-serif;">
  3.                                   <tr>
  4.                                      <td>Ваше Ім'я:</td>
  5.                                   </tr>
  6.                   <tr>
  7.                      <td class="name_com_inp"><input type="text" name="com_name"></td>
  8.                       </tr>
  9.                                   <tr>
  10.                                      <td>Коментар:</td>
  11.                                   </tr>
  12.                       <tr>
  13.                          <td class="text_com_inp"><textarea size="35" type="text" rows="5" cols="32" name="com_post"></textarea></td>
  14.                       </tr>
  15.                       <tr height="60">
  16.                          <td><input class="button_com" type="submit" value="Опубліковати" name="com_submit"></td>
  17.                      </tr>
  18.                  </table>
  19.    </form>


вот код обработки и записи
PHP:
скопировать код в буфер обмена
  1.                             <?PHP
  2.  
  3.                 $com_name = $_POST['com_name'];
  4.                 $com_post = nl2br($_POST['com_post']);
  5.                 $com_submit = $_POST['com_submit'];
  6.                
  7.                 $post_id = $_GET['id'];
  8.                                 $immage_location = "./skins/images/avatar/default_avatar_128.gif";
  9.                                
  10.                 $date_com = date("d.m.y");
  11.                 $date_time_com = date("G:i");
  12.  
  13.                 if ($com_submit)
  14.                 {
  15.                    if ($com_name&&$com_post)
  16.                    {                                                       
  17.                                       $queryreg_add = mysql_query("INSERT INTO comments (name, text, date, date_time, post_id, immage_location) VALUES ('$com_name', '$com_post', '$date_com', '$date_time_com', '$post_id', '$immage_location')") or die(mysql_error());
  18.                       header ('Location: ?id='.$_GET['id'].'&page=forum#form');                          
  19.                                    }   
  20.                    else
  21.                    {
  22.                           echo "<div style='color:red; padding-left:10px;'>Не всі поля заповнені, або заповнені не вірно!</div>";
  23.                    }     
  24.                 }
  25.                 ?>
MBmusic Отправлено: 12 Марта, 2012 - 15:15:15 • Тема: ajax, вывод из формы... • Форум: Вопросы новичков

Ответов: 16
Просмотров: 766
уже решил проблему) вот так написал и вроде как работает под оперой, мозилой и хромом)

PHP:
скопировать код в буфер обмена
  1. header ('Location: ?id='.$_GET['id'].'#form');
MBmusic Отправлено: 11 Марта, 2012 - 18:18:16 • Тема: ajax, вывод из формы... • Форум: Вопросы новичков

Ответов: 16
Просмотров: 766
Мелкий пишет:
MBmusic пишет:
не указывал страницу, ссылается на то что в данный момент активно...)

Возможно, в вашем браузере это и так, но большинство браузеров будут перебрасывать на http://host/#form
(Добавление)
MBmusic пишет:
кстате а зачем писать die();? что оно в данном случае дает??

Прерывает выполнение скрипта. Даёт гарантию того, что дальше скрипт исполняться не будет.


кстате да, в опере например вообще ничего не происходит, тоесть нажимаю отправить и белый экран......в чем дело то? и как сделать что бы оно по нормальному ссылалось, ведь если указать текущую страницу то оно меня вернет назад в сообщения......
MBmusic Отправлено: 11 Марта, 2012 - 17:38:50 • Тема: ajax, вывод из формы... • Форум: Вопросы новичков

Ответов: 16
Просмотров: 766
у меня просто такая штука что на индексовом файле происходит вывод всех сообщений, при выборке сообщения у нас по айди выбираются коменты и на этой же странице появляются комменты адресованные данному сообщению, и по этому если ссылатся на какуюто страницу или даже на эту на которой у нас все происходит, то нас будет отправлять на сообщения а не форму коментов, во этому я написал так:



не указывал страницу, ссылается на то что в данный момент активно...) спасибо тебе DelphinPRO за помошь! кстате а зачем писать die();? что оно в данном случае дает??
MBmusic Отправлено: 11 Марта, 2012 - 17:14:10 • Тема: ajax, вывод из формы... • Форум: Вопросы новичков

Ответов: 16
Просмотров: 766
ну у меня тут вот например php и html идет вместе...

PHP:
скопировать код в буфер обмена
  1.                             <?PHP
  2.                  
  3.                 $com_name = $_POST['com_name'];
  4.                 $com_post = nl2br($_POST['com_post']);
  5.                 $com_submit = $_POST['com_submit'];
  6.  
  7.                 $date_com = date("d.m.y");
  8.                 $date_time_com = date("G:i");
  9.                
  10.                                
  11.                 if ($com_submit)
  12.                 {
  13.                    if ($com_name&&$com_post)
  14.                    {                                 
  15.                                       $queryreg = mysql_query("INSERT INTO comments (name, text, date, date_time, post_id) VALUES ('$com_name', '$com_post', '$date_com', '$date_time_com', '$post_id')") or die(mysql_error());
  16.                       ?>    <script> location.replace(window.location); </script><?PHP
  17.                                    }   
  18.                    else
  19.                    {
  20.                           echo "<div style='color:red'>Не все поля заполнены!</div>";
  21.                    }     
  22.                 }
  23.  
  24.                 ?>
  25.                                 <a name="form"></a>
  26.                                 <form action="" name="post" method="post">
  27.                   <table>
  28.                                   <tr>
  29.                                      <td>Ваше имя:</td>
  30.                                   </tr>
  31.                   <tr>
  32.                      <td class="name_com_inp"><input type="text" name="com_name"></td>
  33.                       </tr>
  34.                                   <tr>
  35.                                      <td>Комментарий:</td>
  36.                                   </tr>
  37.                       <tr>
  38.                          <td class="text_com_inp"><textarea size="35" type="text" rows="5" cols="32" name="com_post"></textarea></td>
  39.                       </tr>
  40.                       <tr height="60">
  41.                          <td><input class="button_com" type="submit" value="Оставить комментарий" name="com_submit"></td>
  42.                      </tr>
  43.                  </table>
  44.                </form>  
  45.                          </div>
  46.                    </div>


делал так как вы сказали чето не работает......мб это из-за того что у меня после того как нажата кнопка стоит перезагрузка страницы:

PHP:
скопировать код в буфер обмена
  1. if ($com_name&&$com_post)
  2.                    {                                 
  3.                                       $queryreg = mysql_query("INSERT INTO comments (name, text, date, date_time, post_id) VALUES ('$com_name', '$com_post', '$date_com', '$date_time_com', '$post_id')") or die(mysql_error());
  4.                       ?>    <script> location.replace(window.location); </script><?PHP
  5.                                    }
MBmusic Отправлено: 11 Марта, 2012 - 16:52:32 • Тема: ajax, вывод из формы... • Форум: Вопросы новичков

Ответов: 16
Просмотров: 766
да!!) именно так и надо!
MBmusic Отправлено: 11 Марта, 2012 - 16:41:16 • Тема: ajax, вывод из формы... • Форум: Вопросы новичков

Ответов: 16
Просмотров: 766
эмм не совсем понял что вы мне хотели сказать......например вот у меня есть форма:
CODE (html):
скопировать код в буфер обмена
  1. <div class="post_div">
  2. <form action="" name="post" method="post" enctype="multipart/form-data">
  3.    <table>
  4.      <tr>
  5.          <td><font>Тема:</font></td>
  6.      <td><input style="width:423px;" type="text" name="post_name"></td>
  7.          </tr>
  8.          <tr>
  9.          <td><font>Зміст:</font></td>
  10.          <td><textarea size="35" type="text" rows="10" cols="50" name="post"></textarea></td>
  11.          </tr>
  12.          <tr>
  13.          <td></td>
  14.          <td><input type="submit" value="Відправити на стіну" name="submit"></td>
  15.          </tr>
  16.    </table>
  17. </form>
  18. </div>


что и где поменять нужно или дописать?
MBmusic Отправлено: 11 Марта, 2012 - 16:21:10 • Тема: ajax, вывод из формы... • Форум: Вопросы новичков

Ответов: 16
Просмотров: 766
а можно ли сделать средствами php так что бы при отправке из формы данных пользователя не перекидовало в начало страницы при перезагрузке страницы?? ну типо результат тот же что и от аякса но перегружает всю страницу?) ну походу ж никак нельзя))...

Страниц (32): В начало « ... 21 22 23 24 [25] 26 27 28 29 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB