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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Проблема передачи данных

 PHP.SU

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


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

> Без описания
Bios
Отправлено: 16 Ноября, 2009 - 18:50:06
Post Id



Новичок


Покинул форум
Сообщений всего: 30
Дата рег-ции: Нояб. 2009  


Помог: 0 раз(а)




тут такая проблема ,есть скрипт

CODE (text):
скопировать код в буфер обмена
  1. <script language='javascript'>
  2. function AddRowsVote() {
  3.      var tbl = document.getElementById('tblvote');
  4.      var lastRow = tbl.rows.length;
  5.          if(lastRow<10){
  6.                  var row = tbl.insertRow(lastRow);
  7.                  var cellRight = row.insertCell(0);
  8.                  var el = document.createElement('input');
  9.                  el.setAttribute('style', 'padding-left:5px; font-weight:bold; width:220px;');
  10.                  el.setAttribute('type', 'text');
  11.                  el.setAttribute('name', 'answer[]');
  12.                  el.setAttribute('value', '');
  13.                  cellRight.appendChild(el);
  14.          }
  15. }
  16. function RemoveRowVote() {
  17.      var tbl = document.getElementById('tblvote');
  18.      var lastRow = tbl.rows.length;
  19.      if (lastRow > 1) tbl.deleteRow(lastRow - 1);
  20. }
  21. </script>
  22. <br>
  23. <table cellpadding="4" cellspacing="0" border="0" class="logincontrols" align="center">
  24. <form name="form_vote" id="form_vote" method="post" enctype="multipart/form-data">
  25. <tr>
  26.         <td>Вопрос: </td>
  27.         <td><input style="padding-left:5px; font-weight:bold; width:230px;" type="text" name="answer[]" value=""/></td>
  28.         <td>&nbsp;</td>
  29. </tr>
  30. <tr>
  31.         <td>Ответы: </td>
  32.         <td>
  33.                 <table border="0" cellspacing="0" cellpadding="0" id="tblvote">
  34.                         <tr id="row">
  35.                                 <td width="1" colspan="2"><input style="padding-left:5px; font-weight:bold; width:220px;" type="text" name="answer[]" value=""/></td>
  36.                         </tr>
  37.                 </table>
  38.     </td>
  39.         <td>&nbsp;</td>
  40. </tr>
  41. <tr>
  42.         <td></td>
  43.         <td><input type=button value="Удалить ответ" onClick="RemoveRowVote();return false;">
  44.         <input type=button value="Добавить ответ" onClick="AddRowsVote();return false;">
  45.     </td>
  46.         <td>&nbsp;</td>
  47. </tr>
  48. <tr>
  49.         <td colspan="3" align="center"><input type="submit" name="vote" class="button" value="  {name_submit}  "/></td>
  50. </tr>
  51. </form>
  52. </table>


в php скрипте

PHP:
скопировать код в буфер обмена
  1. $resultdb = $_POST['answer'];
  2. for($i=1,$j=0;$resultdb[$i];$i++,$j++){
  3.             $addanswer = @mysql_query("INSERT INTO vote_variant VALUE('".($count[vote_id]+1)."','".$resultdb[$i]."','".$j."','0')",$mysql);
  4. }


и базу заносится только первый Ответ ,остальные ответы не заносятся тоисть их вобще нету =(

как сделать чтобы вместе с первым ответом отправлялись и остальные ?
 
 Top
Мелкий Супермодератор
Отправлено: 16 Ноября, 2009 - 19:28:09
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




1) некорректен HTML код. форма должна в вашем случае открываться ДО таблицы, а закрываться После.
2) почему вы в цикле PHP не смотрите в нулевой вариант? Массивы с нуля отсчитываются.
3) var_dump($resultdb); не проясняет ситуацию? Может и не доходят данные?


-----
PostgreSQL DBA
 
 Top
Bios
Отправлено: 16 Ноября, 2009 - 20:02:59
Post Id



Новичок


Покинул форум
Сообщений всего: 30
Дата рег-ции: Нояб. 2009  


Помог: 0 раз(а)




1) хм... так там и есть....
2) 0 - как вы видите это Вопрос
3) так они и не доходят. я и спрашую как сделать так что бы дошло

я в яве скрипте не силен =(
 
 Top
Мелкий Супермодератор
Отправлено: 16 Ноября, 2009 - 20:14:29
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




1) корректно так:
PHP:
скопировать код в буфер обмена
  1.  
  2. <form ....>
  3. <table>
  4. <!-- содержимое и таблицы, и формы -->
  5. </table>
  6. </form>
  7.  

У вас - наоборот.
2) а, да. Не заметил. Непривычный способ.
3) а я JS не переношу большей частью... Так что может кто другой ответит.


-----
PostgreSQL DBA
 
 Top
biperch
Отправлено: 16 Ноября, 2009 - 20:27:12
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 588
Дата рег-ции: Окт. 2009  
Откуда: Днепропетровск


Помог: 8 раз(а)




PHP:
скопировать код в буфер обмена
  1. $resultdb = $_POST['answer'];
  2. for($i=1,$j=0;$resultdb[$i];$i++,$j++){
  3.             $addanswer = @mysql_query("INSERT INTO vote_variant VALUE('".($count[vote_id]+1)."','".$resultdb[$i]."','".$j."','0')",$mysql);
  4. }


Если я не ошибаюсь то в форе должно быть условие..
попробуй так:
PHP:
скопировать код в буфер обмена
  1.  
  2. $resultdb = $_POST['answer'];
  3.  
  4. for($i=0,$j=0;$i<sizeof($resultdb);$i++,$j++){
  5.  
  6.  
 
 Top
Bios
Отправлено: 16 Ноября, 2009 - 20:53:56
Post Id



Новичок


Покинул форум
Сообщений всего: 30
Дата рег-ции: Нояб. 2009  


Помог: 0 раз(а)




biperch так тут не в php скрипте проблема =(
а в самом html коде

например я нажал кнопку "Добавить ответ" добавилось второе поле с ответом вписал что-нибуть
например в первое поле 111 во второе (то что я добавил через кнопку) 222
потом в php скрипте

PHP:
скопировать код в буфер обмена
  1.  
  2. $resultdb = $_POST['answer'];
  3. print($resultdb[2]);


по идеи тут $resultdb[2] должен быть текст 222 но тут пустота тоисть там ничего нету

если пропишу $resultdb[1] то будет 111
 
 Top
Phantik
Отправлено: 16 Ноября, 2009 - 20:56:21
Post Id


Посетитель


Покинул форум
Сообщений всего: 305
Дата рег-ции: Июнь 2009  


Помог: 0 раз(а)




Html-js код и PHP скрипт находятся в одном файле или разных?
 
 Top
Bios
Отправлено: 16 Ноября, 2009 - 20:59:23
Post Id



Новичок


Покинул форум
Сообщений всего: 30
Дата рег-ции: Нояб. 2009  


Помог: 0 раз(а)




Мелкий спасибо
проблема была в том что я не там форму открыл и закрыл ,но теперь все работает ;)
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« JavaScript & VBScript »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB