SergeyKa2
Guest
Добавление нового элемента с помощью формы
Заранее прошу прощения у модераторов за возможную глупость вопроса. К сожалению то время которое было отведено на чтение ФАК и первых сообщений форума - иссякло и надо двигатся дальше.
Собственно вопрос.
Создал форму для добавления нового элемента в таблицу MySQL но обнаружилась проблема если после добавления строки сделать "обновить страницу" добавляется аналогичная запись, т.к. переменные в строке запроса посылаются заново. Возможно помогут сессии, но не представляю как избавится от $QUERY_STRING.
Хочу предупредить, что возможен случай, когда пользователь захочет добавить абсолютно индентичную предидущей запись. Собственно код. Если понятно из текста то вникать сообственно и не нужно
	
	
	
		
								Заранее прошу прощения у модераторов за возможную глупость вопроса. К сожалению то время которое было отведено на чтение ФАК и первых сообщений форума - иссякло и надо двигатся дальше.
Собственно вопрос.
Создал форму для добавления нового элемента в таблицу MySQL но обнаружилась проблема если после добавления строки сделать "обновить страницу" добавляется аналогичная запись, т.к. переменные в строке запроса посылаются заново. Возможно помогут сессии, но не представляю как избавится от $QUERY_STRING.
Хочу предупредить, что возможен случай, когда пользователь захочет добавить абсолютно индентичную предидущей запись. Собственно код. Если понятно из текста то вникать сообственно и не нужно

		PHP:
	
	<?
mysql_connect("localhost","root","");
mysql_select_db("garant");
?><table width="100%" border="1"><?
$r=mysql_query("SELECT id,name,pr_orig,kross_1 FROM catalog;");
$col=mysql_num_fields($r);
$row=mysql_num_rows($r);
if(@$_GET[Add]) {
  for($i=1,$val="",$field=""; $i<$col; $i++){
    $name=mysql_field_name($r,$i);
    $field.=$name.",";
    $val.='"'.$_GET[$name].'",';
  }
  $val=substr($val,0,strlen($val)-1);
  $field=substr($field,0,strlen($field)-1);
  //echo "INSERT INTO catalog ($field) VALUES ('$val');";
  mysql_query("INSERT INTO catalog ($field) VALUES ($val);");
  $r=mysql_query("SELECT id,name,pr_orig,kross_1 FROM catalog;");
  $col=mysql_num_fields($r);
  $row=mysql_num_rows($r);
}
echo '<tr>';
for($i=0; $i<$col; $i++){
  echo '<td>';
  $ident=mysql_field_name($r,$i);
  if($ident) {echo $ident;}
  else {echo ' ';}
  echo '</td>';
}
?><td>DEL</td><form metod="get" action="<?=$_SERVER[SCRIPT_NAME]?>">
</tr><?
for($j=0; $j<$row; $j++) {
  echo '<tr>';
  for($i=0; $i<$col; $i++){
    echo '<td>';
    $ident=mysql_result($r,$j,$i);
    if($ident) {echo $ident;}
    else {echo ' ';}
    echo '</td>';
  }
  echo '</tr>';
}
?>
<tr>
<form metod="get" action="<?=$_SERVER[SCRIPT_NAME]?>">
<td> </td>
<?
for($i=1; $i<$col; $i++){
  echo '<td>';
  $ident=mysql_field_name($r,$i);
  echo "<input type='text' name='$ident'>";
  echo '</td>';
}
?>
</table>
<input type="submit" name="Add" value="Добавить"><input type="Reset" value="Очистить">
</form>
	
	            