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]   

> Описание: Форма селект с подключением к базе
imediasun
Отправлено: 29 Октября, 2012 - 12:47:14
Post Id


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


Покинул форум
Сообщений всего: 605
Дата рег-ции: Авг. 2012  


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

[+][+][+][+][+]


Как сделать так чтобы форма и обработчик были в разных файлах
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. Так работает
  3. <?php
  4. include ("blocks/bd.php");
  5.  
  6. $sql = "SELECT * FROM category";
  7. $result = mysql_query($sql,$db);
  8. $categories = array();
  9.  
  10. while($myrow = mysql_fetch_assoc($result))
  11.  
  12. {
  13.  $categories[] = $myrow;
  14. }?>
  15. <form>
  16. <select name="category_select" class="category_select" size=1 >
  17. <?PHP foreach($categories as $category): ?>
  18. <option value=<?=$category['id'];?>> <?=$category['name']; ?>  
  19. </option>  
  20. <?PHP endforeach; ?>
  21. </select>
  22. </br>
  23. </form>
  24.  
  25.  
А если форма в индексе, а код php в файле post.php не работает

CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. /*index.php
  3.  
  4. <form class="niceform" enctype='multipart/form-data' method ="post" action='blocks/post.php'>
  5. <select name="category_select" class="category_select" size=1 >
  6. <?PHP foreach($categories as $category): ?>
  7. <option value=<?=$category['id'];?>> <?=$category['name']; ?>  
  8. </option>  
  9. <?PHP endforeach; ?>
  10. </select>
  11. </br>
  12. </form>
  13.  
  14. /* файл blocks/post.php
  15.  
  16. <?php
  17. include ("blocks/bd.php");
  18.  
  19. $sql = "SELECT * FROM category";
  20. $result = mysql_query($sql,$db);
  21. $categories = array();
  22.  
  23. while($myrow = mysql_fetch_assoc($result))
  24.  
  25. {
  26.  $categories[] = $myrow;
  27. }?>
  28.  
  29.  

(Отредактировано автором: 30 Октября, 2012 - 03:05:07)

 
 Top
kappa
Отправлено: 29 Октября, 2012 - 13:12:39
Post Id



Посетитель


Покинул форум
Сообщений всего: 349
Дата рег-ции: Апр. 2011  


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




А если PHP код выше HTML формы записать ?
 
 Top
imediasun
Отправлено: 30 Октября, 2012 - 02:04:13
Post Id


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


Покинул форум
Сообщений всего: 605
Дата рег-ции: Авг. 2012  


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

[+][+][+][+][+]


kappa пишет:
А если PHP код выше HTML формы записать ?

так мне нужно чтобы он в другом файле был
 
 Top
ingram
Отправлено: 30 Октября, 2012 - 08:18:11
Post Id



Гость


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


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




imediasun пишет:
kappa пишет:
А если PHP код выше HTML формы записать ?

так мне нужно чтобы он в другом файле был


Значит подключай файл выше, или загоняй код в функцию и вызывай ее где надо.
 
 Top
Varan
Отправлено: 30 Октября, 2012 - 18:07:22
Post Id



Гость


Покинул форум
Сообщений всего: 69
Дата рег-ции: Нояб. 2011  
Откуда: Украина г.Краматорск


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




require вместо include попробуй
и напиши какую ошибку пишет

(Отредактировано автором: 30 Октября, 2012 - 18:10:29)

 
 Top
imediasun
Отправлено: 30 Октября, 2012 - 19:51:22
Post Id


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


Покинул форум
Сообщений всего: 605
Дата рег-ции: Авг. 2012  


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

[+][+][+][+][+]


Varan пишет:
require вместо include попробуй
и напиши какую ошибку пишет

Никакую ошибку не выводит просто нет значений в селекте
 
 Top
Varan
Отправлено: 30 Октября, 2012 - 20:49:14
Post Id



Гость


Покинул форум
Сообщений всего: 69
Дата рег-ции: Нояб. 2011  
Откуда: Украина г.Краматорск


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




их и не будет, так как переменные передаются method ="post" , а вы в обработчике даже не обращаетесь к $_POST
(Добавление)
перед

впишите
echo "<pre>";
print_r ($_POST);
echo "</pre>";
(Добавление)
но судя по коду это совсем не обработчик формы, а скорее предустановка данных в форме, поэтому как вам и писали пшп нужно перенести в перед
(Добавление)
PHP:
скопировать код в буфер обмена
  1. /*index.php*/
  2.  
  3. <?PHP include ("blocks/post.php");?>
  4.  
  5. <form class="niceform" enctype='multipart/form-data' method ="post" action='blocks/post.php'>
  6. <select name="category_select" class="category_select" size=1 >
  7. <?PHP foreach($categories as $category): ?>
  8. <option value=<?=$category['id'];?>> <?=$category['name']; ?>  
  9. </option>  
  10. <?PHP endforeach; ?>
  11. </select>
  12. </br>
  13. </form>


но невижу смысла после отправки формы отправлять значения в blocks/post.php там нет обработки, а только выборка .

(Отредактировано автором: 30 Октября, 2012 - 21:05:05)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB