mojtaba.sln
سه شنبه 16 تیر 1394, 15:57 عصر
سلام و خسته نباشید...
من با کد زیر یه فرم ساختم که می خوام اطلاعات ارسالی توسط کاربر رو روی پایگاه داده mysql ذخیره کنم...
[LTR_INLINE][HTML]
<html>
<body>
<?php
$dbname="mojidb";
$conn=mysqli_connect("localhost","mojtaba","546453156312",$dbname);
$name=$email=$cm=$gen="";
$nameer=$emailer=$cmer=$gener="";
//tabe'e filter:
function filter($data)
{
$data=trim($data);
$data=stripslashes($data);
$data=htmlspecialchars($data);
return $data;
}
//barresiye ersal:
if($_SERVER['REQUEST_METHOD']=="POST")
{
//barresi in ke khali nabashe name :
if(!empty($_POST['name']))
{
$name=filter($_POST["name"]);
if(!preg_match("/^[a-zA-Z ]*$/",$name)) $nameer= "Only letters and whitespaces allowed !";
else
{
/*$query="INSERT INTO comment (name) VALUES ('$name') ";
mysqli_query($conn,$query); */
}
}
else $nameer="Name is required!";
//barresi khali naboodane email va paksaziye email:
if(!empty($_POST["email"]))
{
$email=filter($_POST["email"]);
if(!filter_var($email,FILTER_VALIDATE_EMAIL)) $emailer="This is invalid E-mail";
else
{
/*$query="INSERT INTO comment (email) VALUES('$email')";
mysqli_query($conn,$query);*/
}
}
else $emailer="E-mail is required!";
//barresiye comment:
if(!empty($_POST["cm"]))
{
$cm=filter($_POST["cm"]);
/*$query="INSERT INTO comment (cm) VALUES('$cm')";
mysqli_query($conn,$query);*/
}
else $cm="";
//barresiye gender:
if(!empty($_POST["gen"]))
{
$gen=filter($_POST["gen"]);
/*$query="INSERT INTO comment (gen) VALUES ('$gen')";
mysqli_query($conn,$query);*/
}
else $gener="Gender is required!";
if(empty($_POST['name']) || empty($_POST['email']) || empty($_POST['gen']) ) mysqli_close($conn);
else
{
$query="INSERT INTO comment (name) VALUES ('$name');";
$query .= "INSERT INTO comment (email) VALUES('$email') ;";
$query .= "INSERT INTO comment (cm) VALUES('$cm') ;";
$query .="INSERT INTO comment (gen) VALUES ('$gen') ;";
mysqli_multi_query($conn,$query);
}
}
?>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Name:<input type="text" name="name" value="<?php echo $name;?>"><?php echo $nameer;?><br>
E-mail:<input type="text" name="email" value="<?php echo $email; ?>"><?php echo $emailer ;?><br>
Comment:<textarea row="5" col="40" name="cm"></textarea><br>
Gender:<input type="radio" name="gen" <?php if(isset($gen) &&$gen=="female") echo "checked";?>value="female">Female
<input type="radio" name="gen" <?php if(isset($gen) && $gen=="male") echo "checked";?> value="male">Male
<br><?php echo $gener ;?><br>
<input type="submit" value="send!"></form>
</body>
</html>
</html>
اما یه مشکلی پیش میاد اونم این که وقتی ذخیره می شه هر کدوم از مقادیری که کاربر وارد کرده توی یه سطر جدید ذخیره می شه...
مثل شکل زیر
132991
اگه می شه راهنماییم کنید چیکار کنم که همشو در یه سطرِ جدول ذخیره کنه...ممنون
من با کد زیر یه فرم ساختم که می خوام اطلاعات ارسالی توسط کاربر رو روی پایگاه داده mysql ذخیره کنم...
[LTR_INLINE][HTML]
<html>
<body>
<?php
$dbname="mojidb";
$conn=mysqli_connect("localhost","mojtaba","546453156312",$dbname);
$name=$email=$cm=$gen="";
$nameer=$emailer=$cmer=$gener="";
//tabe'e filter:
function filter($data)
{
$data=trim($data);
$data=stripslashes($data);
$data=htmlspecialchars($data);
return $data;
}
//barresiye ersal:
if($_SERVER['REQUEST_METHOD']=="POST")
{
//barresi in ke khali nabashe name :
if(!empty($_POST['name']))
{
$name=filter($_POST["name"]);
if(!preg_match("/^[a-zA-Z ]*$/",$name)) $nameer= "Only letters and whitespaces allowed !";
else
{
/*$query="INSERT INTO comment (name) VALUES ('$name') ";
mysqli_query($conn,$query); */
}
}
else $nameer="Name is required!";
//barresi khali naboodane email va paksaziye email:
if(!empty($_POST["email"]))
{
$email=filter($_POST["email"]);
if(!filter_var($email,FILTER_VALIDATE_EMAIL)) $emailer="This is invalid E-mail";
else
{
/*$query="INSERT INTO comment (email) VALUES('$email')";
mysqli_query($conn,$query);*/
}
}
else $emailer="E-mail is required!";
//barresiye comment:
if(!empty($_POST["cm"]))
{
$cm=filter($_POST["cm"]);
/*$query="INSERT INTO comment (cm) VALUES('$cm')";
mysqli_query($conn,$query);*/
}
else $cm="";
//barresiye gender:
if(!empty($_POST["gen"]))
{
$gen=filter($_POST["gen"]);
/*$query="INSERT INTO comment (gen) VALUES ('$gen')";
mysqli_query($conn,$query);*/
}
else $gener="Gender is required!";
if(empty($_POST['name']) || empty($_POST['email']) || empty($_POST['gen']) ) mysqli_close($conn);
else
{
$query="INSERT INTO comment (name) VALUES ('$name');";
$query .= "INSERT INTO comment (email) VALUES('$email') ;";
$query .= "INSERT INTO comment (cm) VALUES('$cm') ;";
$query .="INSERT INTO comment (gen) VALUES ('$gen') ;";
mysqli_multi_query($conn,$query);
}
}
?>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Name:<input type="text" name="name" value="<?php echo $name;?>"><?php echo $nameer;?><br>
E-mail:<input type="text" name="email" value="<?php echo $email; ?>"><?php echo $emailer ;?><br>
Comment:<textarea row="5" col="40" name="cm"></textarea><br>
Gender:<input type="radio" name="gen" <?php if(isset($gen) &&$gen=="female") echo "checked";?>value="female">Female
<input type="radio" name="gen" <?php if(isset($gen) && $gen=="male") echo "checked";?> value="male">Male
<br><?php echo $gener ;?><br>
<input type="submit" value="send!"></form>
</body>
</html>
</html>
اما یه مشکلی پیش میاد اونم این که وقتی ذخیره می شه هر کدوم از مقادیری که کاربر وارد کرده توی یه سطر جدید ذخیره می شه...
مثل شکل زیر
132991
اگه می شه راهنماییم کنید چیکار کنم که همشو در یه سطرِ جدول ذخیره کنه...ممنون