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]   

> Без описания
Antonim
Отправлено: 01 Ноября, 2008 - 11:25:44
Post Id


Гость


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


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

[+]


Ситуация следующая: ввожу в таблицу значения бля БД, затем жму кнопку "OK" и все записывается в БД через нижепоказанные код. Проблема в том, что при обновлении страницы в базу каждый раз записывается последнее введенное поле.

Еще вопрочи може кто подскажет как сделать "безусловную ссылку" т.е. в коде я ставлю ссылку на действие, но чтоб не засорять код делаю phpфайл и там все обрабатываю отдельно, потом вернуться как на старую страничку.. пнима, что что-то очень простое но че-то не нашел.


if(isset($_POST["submit"]))
{

$title = $_POST["title"];
$description = $_POST["description"];
$keywords = $_POST["keywords"];
$zagolovok = $_POST["zagolovok"];
if (isset($_POST["checkbox"]))
{
$checkbox = 1;
}
$textarea = $_POST["textarea"];

mysql_query("INSERT INTO generator VALUES ( '$title','$description', '$keywords','$zagolovok', '$checkbox','$textarea','null')");
}
 
 Top
Champion Супермодератор
Отправлено: 01 Ноября, 2008 - 11:41:10
Post Id



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


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


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




Antonim пишет:
ввожу в таблицу значения бля БД
за мат будем наказывать
(Добавление)
А чтоб все значения добавлялись надо
1 - поля на форма называть 'имя[]'
2 - вставку делать циклом
(Добавление)
Antonim пишет:
Еще вопрочи може кто подскажет как сделать "безусловную ссылку" т.е. в коде я ставлю ссылку на действие, но чтоб не засорять код делаю phpфайл и там все обрабатываю отдельно, потом вернуться как на старую страничку

Ничего не понял, что за ссылки... Если речь о том, что мне кажется, то этот phpфайл можно подключить require или include
 
 Top
Antonim
Отправлено: 01 Ноября, 2008 - 12:00:47
Post Id


Гость


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


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

[+]


Champion пишет:
А чтоб все значения добавлялись надо
1 - поля на форма называть 'имя[]'
2 - вставку делать циклом



<form method = post action = "connect+tableins.php">
<table border = 1>
<tr>
<th> Title </th>
<td> <input type = text name = 'title'> </td>
</tr>
<tr>
<th> Description </th>
<td> <input type = text name = 'description'> </td>
</tr>
<tr>
<th> Keywords </th>
<td> <input type = text name = 'keywords'> </td>
</tr>
<tr>
<th> Заголовок </th>
<td> <input type = text name = 'zagolovok'> </td>
</tr>
<tr>
<th> Default page </th>
<td> <input type = checkbox name = 'checkbox' checked value = on > </td>
</tr>
<tr>
<th> Textarea </th>
<td> <input type = text name = 'textarea'> </td>
</tr>

<tr>
<td colspan = 3 align = center>
<input name = "submit" type = submit value = "Create page">
</td>
</tr>
</form>

<?php


Вот формы, вы хотите сказать, что вместо допустим name = 'textarea' писать name = 'textarea[]' ??




2.Includ это хорошо, а можно ли с ним передать данные например через get?
 
 Top
Champion Супермодератор
Отправлено: 01 Ноября, 2008 - 12:03:48
Post Id



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


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


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




Antonim пишет:
от формы, вы хотите сказать, что вместо допустим name = 'textarea' писать name = 'textarea[]' ??
Да, если это таблица из нескольких строк.
Инклюд просто вставляет при выполнении текст подключаемого файла на своё место. Передавать ему переменные не надо.
(Добавление)
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <form ....>
  3. <table>
  4. <tr><td><input name=col1[]></td><td><td><input name=col2[]></td></tr>
  5. <tr><td><input name=col1[]></td><td><td><input name=col2[]></td></tr>
  6. <tr><td><input name=col1[]></td><td><td><input name=col2[]></td></tr>
  7. </table>
  8.  

В обработке
CODE (text):
скопировать код в буфер обмена
  1. while ( isset($col1[ $i ]) ) {
  2. // делаем insert
  3. $i++;
  4. }
 
 Top
Antonim
Отправлено: 01 Ноября, 2008 - 12:40:33
Post Id


Гость


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


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

[+]


у меня оди из инпутов isset всегда т.к. checkbox.. что делать? И мне нужно делать инсерт только если заполнены все поля.
 
 Top
IOpeH
Отправлено: 01 Ноября, 2008 - 13:07:38
Post Id



Частый гость


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


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




Champion, ему то вроде надо чтоб при обновлении страницы данные уже отправленные и записанные снова не добавлялись
Antonim , правильно я понял ?
если так, то надо просто взять из базы поледние данные и сравнить с текущими ...
 
 Top
Champion Супермодератор
Отправлено: 01 Ноября, 2008 - 13:24:29
Post Id



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


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


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




IOpeH пишет:
Champion, ему то вроде надо чтоб при обновлении страницы данные уже отправленные и записанные снова не добавлялись
Значит я не так понял. Тогда просто надо сначала проверить существование такой записи. Селетом. Кстати, она не обязательно будет последняя. Может быть между тем, как один пользователь обновил страницу еще 10 пользователей сделали то же.

А можно сделать уникальный индекс из полей, которые мы вставляем, тогда при вставке одинаковой записи просто будет ошибка, которую можно спрятать собачкой и проигнорировать
(Добавление)
Antonim пишет:
у меня оди из инпутов isset всегда т.к. checkbox..

Это массив. Если в массиве 4 элемента, то 5й не будет isset и цикл закончится
 
 Top
PHPLamer
Отправлено: 01 Ноября, 2008 - 18:13:19
Post Id



Частый гость


Покинул форум
Сообщений всего: 171
Дата рег-ции: Сент. 2008  
Откуда: Russia, Krasnodar


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




Antonim

Если нет необходимости в уникальности записей в базе. То можно просто назначить значение сессионной переменной, соответственно при первом посещении она будет назначаться и при повторном посещении нужно проверить состояние этой переменной.
Только тогда на той странице где находится у тебя форма для ввода необходимо обнулить эту переменную иначе данные не будут добавляться.
 
 Top
Antonim
Отправлено: 01 Ноября, 2008 - 18:53:33
Post Id


Гость


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


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

[+]


Большое спасибо прошел этап...
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB