mysql - multiple if statement in PHP form -
i have "subscribe" form on website , want check each entry database before submitting it, here form coded want complete it.
form code
<div class="col-lg-8 col-md-12 col-sm-12 col-xs-12"> <h1> subscribe </h1> </div> <div class="col-lg-4 col-lg-offset-2 col-md-12 col-sm-12 col-xs-12"> <form action="" method="post" class="inp_txt horizontal-form" enctype="multipart/form-data"> <?php echo $result;?> <?php echo $error1;?> <?php echo $error2;?> <?php echo $error3;?> <div class="form-group"> <label for="name"> name: </label> <input type="text" name="name" class="form-control" value="<?=(isset($name) ? $name : "")?>" placeholder="please enter name" required> </div> <div class="form-group"> <label for="phone"> phone number: </label> <input type="number" name="phone" class="form-control" value="<?=(isset($phone) ? $phone : "")?>" placeholder="please enter valid phone number" required> </div> <div class="form-group"> <label for="email"> email: </label> <input type="email" name="email" class="form-control" value="<?=(isset($email) ? $email : "")?>" placeholder="please enter valid email address"> </div> <div class="form-group"> <button type="submit" class="btn btn-info btn-md" name="subscribe" value="subscribe me"> subscribe me </button> </div> </form> </div> </div> </div> <?php include ("include/header.php"); include ("include/side_bar.php"); //error_reporting(e_all); //ini_set('display_errors', 'on'); ?> <?php $result = ""; if(isset($_post['subscribe'])) { $name = $_post['name']; mysql_real_escape_string($name); $email = $_post['email']; mysql_real_escape_string($email); $phone = $_post['phone']; mysql_real_escape_string($phone); $result = ""; $error1 = ""; $error2 = ""; $error3 = ""; $check_email = "select * data email = '$email'"; $res_email = mysql_query($check_email) or die(mysql_error()); $check_phone = "select * data phone = '$phone'"; $res_phone = mysql_query($check_phone) or die(mysql_error()); if (empty($_post['name']) && empty($_post['phone']) ) { $error1 = "<div class='alert alert-warning'> <a href='#' class='close' data-dismiss='alert' aria-label='close'>×</a> <strong>warning!</strong> please fill fields before submitting form! </div>"; if ($res_phone >= 1) { $error2 = "phone exist"; } if ($res_email >= 1) { $error3 = "email exist"; } } else { $qry = "insert `data` (name, phone, email, src) values ('$name','$phone','$email','subscribed')"; $res = mysql_query($qry) or die(mysql_error()); if ($res == 1 ) { $result = "<div class='alert alert-info'> <a href='#' class='close' data-dismiss='alert' aria-label='close'>×</a> <strong>success!</strong> information saved , subscribed sms , emails :) </div>"; } else { $result = "<div class='alert alert-danger'> <a href='#' class='close' data-dismiss='alert' aria-label='close'>×</a> <strong>error!</strong> there error in saving information, not subscribed receive emails , sms yet :( </div>"; } } } else { // noting } ;?>
once saved these codes, once first if statement executed , other 3 if statements 1 else statement remain un-executed.
warning mysql_query, mysql_fetch_array,mysql_connect etc.. extensions deprecated in php 5.5.0, , removed in php 7.0.0. instead, mysqli or pdo_mysql extension should used.
try
//db connection global $conn; $servername = "localhost"; //host name $username = "username"; //username $password = "password"; //password $mysql_database = "dbname"; //database name //mysqli prepared statement $conn = mysqli_connect($servername, $username, $password) or die("connection failed: " . mysqli_connect_error()); mysqli_select_db($conn,$mysql_database) or die("opps thing went wrong"); $result = ""; if(isset($_post['subscribe'])) { $name = $_post['name']; mysqli_real_escape_string($name); $email = $_post['email']; mysqli_real_escape_string($email); $phone = $_post['phone']; mysqli_real_escape_string($phone); $result = ""; $error1 = ""; $error2 = ""; $error3 = ""; $error = false; //$check_email = "select * data email = '$email'"; // $res_email = mysql_query($check_email) or die(mysql_error()); $stmt = $conn->prepare("select * data email =?"); $stmt->bind_param('s',$email); argument may 1 of 4 types: - integer d - double s - string b - blob //change respectively $stmt->execute(); $get_result =$stmt->get_result(); $row_count_email= $get_result->num_rows; //$row_count= $stmt->affected_rows; $stmt->close(); //$check_phone = "select * data phone = '$phone'"; //$res_phone = mysql_query($check_phone) or die(mysql_error()); $stmt1 = $conn->prepare("select * data phone =?"); $stmt1->bind_param('s',$phone); //here data type change based on db design argument may 1 of 4 types: - integer d - double s - string b - blob //change respectively $stmt1->execute(); $get_result1 =$stmt1->get_result(); $row_count_phone= $get_result1->num_rows; //$row_count= $stmt1->affected_rows; $stmt1->close(); if (empty($_post['name']) && empty($_post['phone']) ) { $error1 = "<div class='alert alert-warning'> <a href='#' class='close' data-dismiss='alert' aria-label='close'>×</a> <strong>warning!</strong> please fill fields before submitting form! </div>"; $error = true; } if($row_count_phone >= 1) { $error2 = "phone exist"; $error = true; } if($row_count_email >= 1) { $error3 = "email exist"; $error = true; } if(!$error){ //$qry = "insert `data` (name, phone, email, src) values ('$name','$phone','$email','subscribed')"; //$res = mysql_query($qry) or die(mysql_error()); $stmt2 = $conn->prepare("insert `data` (name, phone, email, src) values (?,?,?,?)"); $stmt2->bind_param('ssss',$name,$phone,$email,'subscribed'); argument may 1 of 4 types: - integer d - double s - string b - blob //change respectively $stmt2->execute(); //$get_result2 =$stmt2->get_result(); //$row_count= $get_result2->num_rows; $row_count= $stmt2->affected_rows; $stmt2->close(); $conn2->close(); if ($row_count >=1 ) { $result = "<div class='alert alert-info'> <a href='#' class='close' data-dismiss='alert' aria-label='close'>×</a> <strong>success!</strong> information saved , subscribed sms , emails :) </div>"; } else { $result = "<div class='alert alert-danger'> <a href='#' class='close' data-dismiss='alert' aria-label='close'>×</a> <strong>error!</strong> there error in saving information, not subscribed receive emails , sms yet :( </div>"; } } } ?>
and use if condition error , result in form otherwise throw error
<?php if($result){ echo $result; } ?> <?php if($error1){ echo $error1; } ?>
Comments
Post a Comment