А как сделать так, чтобы пользователь после сообщения "Заполните все поля" попал на страницу с заполненной им формой - чтоб не приходилось повторно заполнять уже заполненные поля?
И ещё вопрос: как с помощью ПХП проще сделать запрос подтверждения введённых данных (типа: вы уверены, что хотите внести такие-то данные - да , нет)?
1. chiv - 06 Ноября, 2005 - 09:32:26 - перейти к сообщению
2. TvoyWeb - 06 Ноября, 2005 - 18:19:38 - перейти к сообщению
chiv пишет:
А как сделать так, чтобы пользователь после сообщения "Заполните все поля" попал на страницу с заполненной им формой - чтоб не приходилось повторно заполнять уже заполненные поля?
Ну например в гестах такую вещь делают используя куки.
То есть во время отправки отправляй эти данные в куки или в сессию. или в какой нибудь временный файл, а при генерации формы, подставляй эти значения в соответсвующие поля.
2 вопрос не совсем понял.
3. chiv - 07 Ноября, 2005 - 01:48:15 - перейти к сообщению
TvoyWeb
Поясню:
Пользователь вводит данные в форму, нажимает кнопочку "ввод" и ему "выскакивает окошко" - "Вы ввели то-то и то-то. Если данные верны нажмите "ОК", если нет - "Отмена""
Соответственно при нажатии "ОК" данные загружаются в базу, при нажатии "Отмена" происходит возврат на страницу с формой.
Для возврата, вроде, можно использовать:
А, вот, как лучше организовать выскакивающее окно:
Обязательно передавать параметры с помощью скрытых полей, или можно как-то по другому?
Поясню:
Пользователь вводит данные в форму, нажимает кнопочку "ввод" и ему "выскакивает окошко" - "Вы ввели то-то и то-то. Если данные верны нажмите "ОК", если нет - "Отмена""
Соответственно при нажатии "ОК" данные загружаются в базу, при нажатии "Отмена" происходит возврат на страницу с формой.
Для возврата, вроде, можно использовать:
CODE:
<a href="javascript:history.go(-1)">
А, вот, как лучше организовать выскакивающее окно:
Обязательно передавать параметры с помощью скрытых полей, или можно как-то по другому?
4. Maverick - 07 Ноября, 2005 - 04:06:54 - перейти к сообщению
CODE:
<?php
echo 'test';
$vars = parsed_vars();
echo $vars['action'];
$text=chr(13);
if (is_array($vars)) {
foreach ($vars as $k => $v) {
$text .= $v.chr(13);
}}
echo <<<DATA
<html>
<body>
<script languge="Javascript">
if confirm ('Правильноли введены данные:'+$text) { /*то что нужно делать дальше*/ } else {history.go(-1);}
</script></body></html>
DATA;
function parsed_vars() {
$return = array();
if ( is_array($_GET) ) {
while( list($k, $v) = each($_GET) ) {
if ( is_array($_GET[$k]) ) {
while( list($k2, $v2) = each($_GET[$k]) ) {
$return[$k][ clean_key($k2) ] = clean_value($v2);
}
}
else { $return[$k] = clean_value($v); }
}
}
if ( is_array($_POST) ) {
while( list($k, $v) = each($_POST) ) {
if ( is_array($_POST[$k]) ) {
while( list($k2, $v2) = each($_POST[$k]) ) {
$return[$k][ clean_key($k2) ] = clean_value($v2);
}
}
else { $return[$k] = clean_value($v); }
}
}}
function clean_value($val) {
if ($val == '') { return ''; }
$val = str_replace( " " , ' ' , $val );
$val = str_replace( "&" , '&' , $val );
$val = str_replace( "<!--" , '<!--' , $val );
$val = str_replace( "-->" , '-->' , $val );
$val = preg_replace( "/<script/i" , '<script' , $val );
$val = str_replace( ">" , '>' , $val );
$val = str_replace( "<" , '<' , $val );
$val = str_replace( "\"" , '"' , $val );
$val = preg_replace( "/\n\n/" , '<p>' , $val );
$val = preg_replace( "/\n/" , '<BR>' , $val );
$val = preg_replace( "/\\\$/" , '$' , $val );
$val = preg_replace( "/\r/" , '' , $val );
$val = stripslashes($val);
$val = preg_replace( "/\\\/" , '\' , $val );
return $val;
}
?>
<?php
echo 'test';
$vars = parsed_vars();
echo $vars['action'];
$text=chr(13);
if (is_array($vars)) {
foreach ($vars as $k => $v) {
$text .= $v.chr(13);
}}
echo <<<DATA
<html>
<body>
<script languge="Javascript">
if confirm ('Правильноли введены данные:'+$text) { /*то что нужно делать дальше*/ } else {history.go(-1);}
</script></body></html>
DATA;
function parsed_vars() {
$return = array();
if ( is_array($_GET) ) {
while( list($k, $v) = each($_GET) ) {
if ( is_array($_GET[$k]) ) {
while( list($k2, $v2) = each($_GET[$k]) ) {
$return[$k][ clean_key($k2) ] = clean_value($v2);
}
}
else { $return[$k] = clean_value($v); }
}
}
if ( is_array($_POST) ) {
while( list($k, $v) = each($_POST) ) {
if ( is_array($_POST[$k]) ) {
while( list($k2, $v2) = each($_POST[$k]) ) {
$return[$k][ clean_key($k2) ] = clean_value($v2);
}
}
else { $return[$k] = clean_value($v); }
}
}}
function clean_value($val) {
if ($val == '') { return ''; }
$val = str_replace( " " , ' ' , $val );
$val = str_replace( "&" , '&' , $val );
$val = str_replace( "<!--" , '<!--' , $val );
$val = str_replace( "-->" , '-->' , $val );
$val = preg_replace( "/<script/i" , '<script' , $val );
$val = str_replace( ">" , '>' , $val );
$val = str_replace( "<" , '<' , $val );
$val = str_replace( "\"" , '"' , $val );
$val = preg_replace( "/\n\n/" , '<p>' , $val );
$val = preg_replace( "/\n/" , '<BR>' , $val );
$val = preg_replace( "/\\\$/" , '$' , $val );
$val = preg_replace( "/\r/" , '' , $val );
$val = stripslashes($val);
$val = preg_replace( "/\\\/" , '\' , $val );
return $val;
}
?>
5. chiv - 07 Ноября, 2005 - 05:08:34 - перейти к сообщению
Maverick
Спасибо, буду разбираться (скрипт сразу не работает)
Спасибо, буду разбираться (скрипт сразу не работает)
6. Maverick - 07 Ноября, 2005 - 07:04:36 - перейти к сообщению
chiv
А где это нужно сделать??? На движке форума или отдельно???
А где это нужно сделать??? На движке форума или отдельно???
7. Ray Wen - 07 Ноября, 2005 - 07:22:15 - перейти к сообщению
chiv
Вот несколько упрощенный вариант того как я делал...
Ну и потом ставиш проверку, есть ли данные переданные по POST и подставляеш form($_POST);
Вот несколько упрощенный вариант того как я делал...
CODE:
function form($ar=array()){
return "<form name=form1 method=post action=><table width=100%>
<tr><td colspan=2><b>Добавить в черный список работника:</b></td></tr>
<tr><td width=200>Организация:</td><td><input name=name type=text id=name size=20 maxlength=20 value=\"".htmlspecialchars(@$ar['name'])."\"></td></tr>
<tr><td>Директор:</td><td><input name=director type=text id=director size=20 maxlength=60 value=\"".htmlspecialchars(@$ar['director'])."\"></td></tr>
<tr><td valign=top>Вид деятельности:<BR>(максимум 800 знаков)</td><td><textarea name=comment cols=60 rows=5 id=comment>".htmlspecialchars(@$ar['comment'])."</textarea></td></tr>
<tr><td colspan=2 align=center><input type=submit name=Submit value=".(($ar)?'Сохранить':'Добавить')."></td></tr>
</table></form>";
}
return "<form name=form1 method=post action=><table width=100%>
<tr><td colspan=2><b>Добавить в черный список работника:</b></td></tr>
<tr><td width=200>Организация:</td><td><input name=name type=text id=name size=20 maxlength=20 value=\"".htmlspecialchars(@$ar['name'])."\"></td></tr>
<tr><td>Директор:</td><td><input name=director type=text id=director size=20 maxlength=60 value=\"".htmlspecialchars(@$ar['director'])."\"></td></tr>
<tr><td valign=top>Вид деятельности:<BR>(максимум 800 знаков)</td><td><textarea name=comment cols=60 rows=5 id=comment>".htmlspecialchars(@$ar['comment'])."</textarea></td></tr>
<tr><td colspan=2 align=center><input type=submit name=Submit value=".(($ar)?'Сохранить':'Добавить')."></td></tr>
</table></form>";
}
Ну и потом ставиш проверку, есть ли данные переданные по POST и подставляеш form($_POST);
8. chiv - 07 Ноября, 2005 - 08:13:58 - перейти к сообщению
Maverick
Отдельно.
Ray Wen
Спасибо!
На первый взгляд то, что нужно... Как дойду до этой части проекта проверю
Отдельно.
Ray Wen
Спасибо!
На первый взгляд то, что нужно... Как дойду до этой части проекта проверю
9. Maverick - 07 Ноября, 2005 - 10:08:44 - перейти к сообщению
или так:
CODE:
<script language="JavaScript">
function confirm_dan ()
{
text = 'Правильно ли введены данные? \n\n';
text = text + document.forma.in1.value+'\n\n';
text = text + document.forma.in2.value+'\n\n';
if confirm(text) {return true} else {return false};
}
</script>
<form name="forma">
<input name="in1">
<input name="in2">
<input type=Submit value='Отправить' onclick="return confirm_dan();">
</form>
<script language="JavaScript">
function confirm_dan ()
{
text = 'Правильно ли введены данные? \n\n';
text = text + document.forma.in1.value+'\n\n';
text = text + document.forma.in2.value+'\n\n';
if confirm(text) {return true} else {return false};
}
</script>
<form name="forma">
<input name="in1">
<input name="in2">
<input type=Submit value='Отправить' onclick="return confirm_dan();">
</form>
10. chiv - 09 Ноября, 2005 - 03:06:35 - перейти к сообщению
Можно поподробнее про form($_POST)?
А то выяснильсь, что данные в форме это ссылки на поля базы. Следовательно придётся производить обработку данных и предложенные методы не подходят.
А то выяснильсь, что данные в форме это ссылки на поля базы. Следовательно придётся производить обработку данных и предложенные методы не подходят.