A submit, a $_POST és egyebek
Sziasztok!
Az alábbi kódot farigcsáltam össze. Sajnos a $_POST végigjárásánál a submit gomb értékét is az adatbázisba szeretné szúrni. Hogyan tudom ezt a problémát megszüntetni?
Ha más probléma is van a kódomba, kérlek magyarázzátok el nekem.
Köszönöm:
Peter71
■ Az alábbi kódot farigcsáltam össze. Sajnos a $_POST végigjárásánál a submit gomb értékét is az adatbázisba szeretné szúrni. Hogyan tudom ezt a problémát megszüntetni?
Ha más probléma is van a kódomba, kérlek magyarázzátok el nekem.
Köszönöm:
Peter71
<?php
include('post_vars.inc');
include('includes/db_conn.php');
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-2">
<link rel="stylesheet" type="text/css" href="includes/my.css">
<title>Felvitel</title>
</head>
<body>
<div class="content">
<form action="" method="post">
<label> Név:</label>
<input type="text" name="wname"> <br><br>
<label> Telefon:</label>
<input type="text" name="wphone"> <br><br>
<label> E-mail:</label>
<input type="text" name="wmail"> <br><br>
<input type="submit" name="kuld" value="Küld">
</form>
</div>
</body>
</html>
<?php
if ( isset ( $_POST['kuld'] ) && $_POST['wname'] !='' ){
$sql='SELECT * FROM Workers WHERE worker_name="'.$_POST['wname'].'"';
$result=mysql_query($sql);
$workername= mysql_fetch_row($result);
if ($workername[1]!='')
echo "Ilyen névvel: $workername[1] már van dolgozó felvéve";
else {
muvelet(workers,insert);
}
}
else if (isset ($_POST['kuld']) && $_POST['wname'] =='')
echo '<script> alert("Név megadása kötelező") </script>';
function muvelet($tabla, $muvelet) {
$sql='SELECT column_name FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = "'.$tabla.'"
AND table_schema = "*****"';
$res=mysql_query($sql);
while($wtomb= mysql_fetch_assoc($res)){
$colname.=$wtomb[column_name]. ', ';
}
$fieldnames = '('.substr($colname, 0, -2).')';
foreach ($_POST as $val) {
$str .= '"'.$val.'", ';
}
$values = '('.substr($str, 0,-2).')';
switch ($muvelet) {
case insert:
$sql2='ISERT INTO '.$tabla. '('.$fieldnames.') VALUES '.$values;
mysql_query($sql2) or die(mysql_error());
break;
case update:
;
break;
case delete;
;
break;
default:
break;
}
}
?>
Gagyibb megoldás: foreach
Köszönöm, a dolog jól
Kicsit olvasgattam a neten, a következő lépés, ha jól látom akkor az, hogy ellenőrzöm a $_POST értéket.
Köszönöm:
Peter71
while($wtomb=
Köszönöm, ez biztosan
reguláris kifejezések
Nem adsz name paramétert
Az űrlapot így is el lehet küldeni, és még a validátor sem aggódik. Szvsz. ennél nem lehet egyszerűbben.