The Web Design Group

... Making the Web accessible to all.

Welcome Guest ( Log In | Register )

 
Reply to this topicStart new topic
> unable to insert data, Hey I'm new in php i'm unable to insert data in my database
Ricky8484
post Jul 22 2014, 12:52 AM
Post #1





Group: Members
Posts: 6
Joined: 22-July 14
Member No.: 21,292



,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,Insert.php,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

<?php

$conn=mysqli_connect("localhost","root","ricky","phpexample");
if(mysqli_connect_errno()){
echo "Fail to connect:" .mysqli_connect_error();
}

$name=mysqli_real_escape_string($conn,$_POST["name"]);
$email=mysqli_real_escape_string($conn,$_POST["email"]);
$website=mysqli_real_escape_string($conn,$_POST["website"]);
$comment=mysqli_real_escape_string($conn,$_POST["comment"]);
$gender=mysqli_real_escape_string($conn,$_POST["gender"]);

$sql="insert into example(name,email,website,comment,gender) values ('$name','$email','$website','$comment',$gender)";

if(!mysqli_query($conn,$sql)){

die ('error:'.mysqli_error($conn));
}
echo "Record added";
mysqli_close($conn);

?>




............................................................................................




<!DOCTYPE HTML>
<html>
<head>
<style>
.error{color: #FF0000;}
</style>
</head>
<body>
<?php
//define variable
$nameErr= $emailErr= $websiteErr= $genderErr= "";
$name= $email= $website =$comment= $gender= "";

if($_SERVER["REQUEST_METHOD"]=="POST"){

if(empty($_POST["name"])){
$nameErr="Name Required";
} else {
$name= test_input($_POST["name"]);
}
if(empty($_POST["email"])) {
$emailErr="Email Required";
} else{
$email=test_input($_POST["email"]);
}
if(empty($_POST["website"])) {
$website="";
} else {
$website= test_input($_POST["website"]);
}
if(empty($_POST["comment"])) {
$comment="";
} else {

$comment=test_input($_POST["comment"]);
}
if(empty($_POST["gender"])) {
$genderErr="Select gender";
} else {
$gender= test_input($_POST["gender"]);
}
}
function test_input($data) {
$data= trim($data);
$data= stripslashes($data);
$data= htmlspecialchars($data);
return $data;
}
?>
<h2> PHP Form </h2>
<p><span class="error"> *Required Field </span></p>
<form method="post" action="Insert.php">

Name: <input type="text" name="name" value="<?php echo $name;?>">
<span class="error">*<?php echo $nameErr;?></span>
<br><br>
Email: <input type="text" name="email" value="<?php echo $email;?>">
<span class="error">*<?php echo $emailErr;?></span>
<br><br>
Website: <input type="text" name="website" value="<?php echo $website;?>">
<span class="error">* <?php echo $websiteErr; ?></span>
<br><br>
Comment: <textarea rows="5" cols="40"><?php echo $comment ;?></textarea>
<br><br>
Gender: <input type="radio" name="gender" <?php if(isset($gender) && $gender == "female") echo ="checked";?> value="female">Female
<input type="radio" name="gender" <?php if(isset($gender) && $gender == "male") echo ="checked ;"?> value="male"> Male
<span class="error">* <?php echo $genderErr ;?></span>
<br><br>
<input type="submit" name="submit" value="Submit">
</form>
</body>
</html>
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post
Ricky8484
post Jul 22 2014, 12:54 AM
Post #2





Group: Members
Posts: 6
Joined: 22-July 14
Member No.: 21,292



May be I did lots of mistakes. Please correct me .
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post
Ricky8484
post Jul 22 2014, 01:02 AM
Post #3





Group: Members
Posts: 6
Joined: 22-July 14
Member No.: 21,292



Then I tried this:





<!DOCTYPE HTML>
<html>
<head>
<style>
.error {color: #FF0000;}
</style>
</head>
<body>

<?php
// define variables and set to empty values
$nameErr = $emailErr = $genderErr = $websiteErr = "";
$name = $email = $gender = $comment = $website = "";

if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["name"])) {
$nameErr = "Name is required";
} else {
$name = test_input($_POST["name"]);
// check if name only contains letters and whitespace
if (!preg_match("/^[a-zA-Z ]*$/",$name)) {
$nameErr = "Only letters and white space allowed";
}
}

if (empty($_POST["email"])) {
$emailErr = "Email is required";
} else {
$email = test_input($_POST["email"]);
// check if e-mail address syntax is valid
if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) {
$emailErr = "Invalid email format";
}
}

if (empty($_POST["website"])) {
$website = "";
} else {
$website = test_input($_POST["website"]);
// check if URL address syntax is valid (this regular expression also allows dashes in the URL)
if (!preg_match("/\b(?sad.gif?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i",$website)) {
$websiteErr = "Invalid URL";
}
}

if (empty($_POST["comment"])) {
$comment = "";
} else {
$comment = test_input($_POST["comment"]);
}

if (empty($_POST["gender"])) {
$genderErr = "Gender is required";
} else {
$gender = test_input($_POST["gender"]);
}
}

function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>

<h2>PHP Form Validation Example</h2>
<p><span class="error">* required field.</span></p>
<form method="post" action="Insert.php">
Name: <input type="text" name="name" value="<?php echo $name;?>">
<span class="error">* <?php echo $nameErr;?></span>
<br><br>
E-mail: <input type="text" name="email" value="<?php echo $email;?>">
<span class="error">* <?php echo $emailErr;?></span>
<br><br>
Website: <input type="text" name="website" value="<?php echo $website;?>">
<span class="error"><?php echo $websiteErr;?></span>
<br><br>
Comment: <textarea name="comment" rows="5" cols="40"><?php echo $comment;?></textarea>
<br><br>
Gender:
<input type="radio" name="gender" <?php if (isset($gender) && $gender=="female") echo "checked";?> value="female">Female
<input type="radio" name="gender" <?php if (isset($gender) && $gender=="male") echo "checked";?> value="male">Male
<span class="error">* <?php echo $genderErr;?></span>
<br><br>
<input type="submit" name="submit" value="Submit">
</form>

<?php
echo "<h2>Your Input:</h2>";
echo $name;
echo "<br>";
echo $email;
echo "<br>";
echo $website;
echo "<br>";
echo $comment;
echo "<br>";
echo $gender;
?>

</body>
</html>
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,Insert.php,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,



<?php

$conn=mysqli_connect("localhost","root","ricky","phpexample");
if(mysqli_connect_errno()){
echo "Fail to connect:" .mysqli_connect_error();
}

$name=mysqli_real_escape_string($conn,$_POST["name"]);
$email=mysqli_real_escape_string($conn,$_POST["email"]);
$website=mysqli_real_escape_string($conn,$_POST["website"]);
$comment=mysqli_real_escape_string($conn,$_POST["comment"]);
$gender=mysqli_real_escape_string($conn,$_POST["gender"]);

$sql="insert into example(name,email,website,comment,gender) values ('$name','$email','$website','$comment','$gender')";

if(!mysqli_query($conn,$sql)){

die ('error:'.mysqli_error($conn));
}
echo "Record added";
mysqli_close($conn);

?>
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post
Ricky8484
post Jul 22 2014, 01:04 AM
Post #4





Group: Members
Posts: 6
Joined: 22-July 14
Member No.: 21,292



When I click on the submit button getting error..........

error:Table 'phpexample.example' doesn't exist

this is my database ,,,,,,,,,,,,,,,,,,,,


create database phpexample;
create table example(name varchar(20), email varchar(20), website varchar(20), comment varchar(100), gender varchar(20));
select * from example;
insert into example values('Ricky','icy_negi84@yahoo.com','www.google.com','sdsadsadsad','male');
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post
CharlesEF
post Jul 22 2014, 04:36 AM
Post #5


Programming Fanatic
********

Group: Members
Posts: 1,981
Joined: 27-April 13
From: Edinburg, Texas
Member No.: 19,088



Have you checked to make sure the database and table are created correctly? Have you checked that the 1 row of data is inserted correctly? I think this code:
CODE
create database phpexample;
create table example(name varchar(20), email varchar(20), website varchar(20), comment varchar(100), gender varchar(20));
select * from example;
insert into example values('Ricky','icy_negi84@yahoo.com','www.google.com','sdsadsadsad','male');
which will create a database named phpexample but the table example might be created in another database, should be this:
CODE
create database phpexample;
create table phpexample.example(name varchar(20), email varchar(20), website varchar(20), comment varchar(100), gender varchar(20));
insert into phpexample.example values('Ricky','icy_negi84@yahoo.com','www.google.com','sdsadsadsad','male');
Or this:
CODE
create database phpexample;
use phpexample;
create table example(name varchar(20), email varchar(20), website varchar(20), comment varchar(100), gender varchar(20));
insert into example values('Ricky','icy_negi84@yahoo.com','www.google.com','sdsadsadsad','male');

I also think you should be allowing more characters for email and website, 20 is pretty small. In fact, I think the defacto standard length for email is 256 - 2 leaves 254 characters.
I have not checked for any other errors at this time.
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



- Lo-Fi Version Time is now: 26th April 2024 - 04:36 PM