2013-12-12 3 views
-2

Валидация dine.now я путаюсь, что где писать вставки запроса в этом кодеПроверка подлинности PHP не работает вставить запрос?

<td><input type="text" name="t4"></td> 
     <td> 
     <div class="ans"> 
     <?php if(isset($_GET['ans1'])){ 
      $txt1=$_GET['ans1']; 
      echo $txt1; 
     }?> 
     <?php if(isset($_GET['ans4'])){ 
      $txt4=$_GET['ans4']; 
      echo $txt4; 
     }?> 
     </div> 
     </td> 

signup.php

<?php 
    include "db.php"; 
    $user=$_POST['t1']; 
    $pass=md5($_POST['t2']); 
    $confirm=md5($_POST['t3']); 
    $email=$_POST['t4']; 
    if($pass == $confirm && !preg_match("/^[a-zA-Z ]*$/",$email)){ 
    mysql_query("insert into registor(username,password,email) values('$user','$pass','$email')")or die(mysql_error()); 
    $query="select* from registor where username like '" . 
     mysql_real_escape_string($user) . "'"; 
    $res =mysql_query($query); 
    if(mysql_num_rows($res) > 0) { 
     $txt3="username already taken"; 
     header("location:signup-index.php?ans3=$txt3"); 
    } 
    $query2="select* from registor where email like '" . 
     mysql_real_escape_string($email) . "'"; 
    $res2 =mysql_query($query2); 
    if(mysql_num_rows($res2) > 0) { 
     $txt4="email already taken"; 
     header("location:signup-index.php?ans4=$txt4"); 
    } 
    } 
    else{ 
     $txt2="Password not match"; 
     $txt1 = "Please enter valid email"; 
     header("location:signup-index.php?ans1=$txt1&ans2=$txt2"); 
    } 
     ?> 

где добавить вставки MySQL запрос в это code.is там лучше способ сделать форму. запись вставлена, но она показывает адрес электронной почты уже на index.html

+0

Что вы хотите вставить? и, пожалуйста, прочитайте это http://php.net/manual/en/mysqlinfo.api.choosing.php –

+0

спасибо за ответ. Я хочу вставить этот запрос = "insert into table values ​​$ user ....". где писать этот код где угодно, тогда данные вставляются без проверки правильности. – user3060132

+0

Вы хотите вставить пользователя в registor без vallidation ?? –

ответ

1

В соответствии с вашими комментариями и проблемами в вашем вопросе. Здесь я нашел несколько моментов.

1) Ваш запрос как выбрать неправильно

select* from registor ..... 

должен быть

select * from registor..... 
    ^

2) Ваша запись ваш запрос вставки, когда все ваши проверки правильно. вы написали свой запрос на ввод в начале цикла. он всегда вставляет запись перед проверкой.

signup.php

<?php 

include "db.php"; 
$user = $_POST['t1']; 
$pass = md5($_POST['t2']); 
$confirm = md5($_POST['t3']); 
$email = $_POST['t4']; 
if ($pass == $confirm && !preg_match("/^[a-zA-Z ]*$/", $email)) { 
    $errorFlag = 0; 
    $query = "select * from registor where username like '" . 
      mysql_real_escape_string($user) . "'"; 
    $res = mysql_query($query); 
    if (mysql_num_rows($res) > 0) { 
     $errorMsg = "username already taken"; 
     $errorFlag = 1; 
    } 
    $query2 = "select * from registor where email like '" . 
      mysql_real_escape_string($email) . "'"; 
    $res2 = mysql_query($query2); 
    if (mysql_num_rows($res2) > 0) { 
     $errorMsg = "email already taken"; 
     $errorFlag = 1; 
    } 

    if ($errorFlag) { 
     header("location:signup-index.php?msg=$errorMsg"); 
    } else { 
     mysql_query("insert into registor (username,password,email) values('$user','$pass','$email')") or die(mysql_error()); 
    } 
} else { 
    $txt2 = "Password not match"; 
    $txt1 = "Please enter valid email"; 
    header("location:signup-index.php?ans1=$txt1&ans2=$txt2"); 
} 

Дисплей тзд Ошибка, как это: -

<td> 
    <div class="ans"> 
     <?php 
     if (isset($_GET['msg'])) { 
      echo $_GET['msg']; 
     } 
     ?> 
    </div> 
</td> 
+0

любой синтаксис, что как писать запрос вставки с помощью цикла. Я хочу, чтобы данные вставлялись после проверки всех валидаций. Теперь я сталкиваюсь с проблемой, данные вставляются без проверки правильности. спасибо за ваш ответ sir. :) – user3060132

+0

Да, ваши данные будут вставлены после проверки. Пожалуйста, сначала попробуйте мое решение :) – Roopendra

+0

его готово оценили ... Спасибо alot..Its работает отлично сейчас. – user3060132

Смежные вопросы