используя логин и регистрацию нового пользователя в php - PullRequest
0 голосов
/ 17 августа 2011

Я пытался работать с регистрационным именем регистра переключателя и кнопкой отправки нового пользователя, но я получаю только вариант регистра по умолчанию с его значениями.и ниже код.

<?php
    switch ($_POST['submit'])
    {
        //Customer Logins here 
        case "CLogin":
            $var1 = $_POST['cname'];
            $var2 = $_POST['cpwd'];

            $con1 = mysql_connect("localhost","FreeUser","123456");
            if(!$con1){
                die('Could not Connect to mySql server : ' . mysql_error());
            }
            else
            {
                mysql_select_db("ecommerce",$con1);
                $r1 = mysql_query("select username,password from newusers where username='$var1' and         password='$var2'");
                while($som = mysql_fetch_row($r1)){
                    $tn = $som[0];
                    $tp = $som[1];
                }

                if($tn == $var1 && $tp == $var2)
                {
                    session_start();

                    $_SESSION['LoggedUser']= $var1;
                }
                else{echo "Please check Username & Password again!";}
            }
        break;


        //New Customer Sign up here
        case "CNewUser":

        break;


        //Wrong opotion code here
        default :
            echo "check out";
            echo $_POST['cuname'];
            echo $_POST['cpwd'];
            break;
    }
?>

<form name="form1" method="post" >
    <table>
        <tr><td>User Id : </td><td><input type="text" name="cuname" /></td></tr>
        <tr><td>Password : </td><td><input type="password" name="cpwd" /></td></tr>
        <tr><td></td><td><input type="submit" name="CLogin" value="Sign In"><input type="submit" name="CNewUser" value="New User"></td></tr>
    </table>
</form>

Ответы [ 3 ]

0 голосов
/ 17 августа 2011

$ _ POST ['submit'] - это не поле в вашей форме. Это либо $ _POST ['CLogin'], либо $ _POST ['CNewUser'], который установлен. Что вы можете сделать, это дать обеим кнопкам отправки одно и то же имя и проверить разные значения.

Так что для входов с именами 'submit' и значениями 'Login' и 'New User' вы получите:

switch ($_POST['submit'])
{
  case 'Login':
    // Code here
  break;
  case 'New User':
    // Code here
  break;
  default:
    // Code here
  break;
}
0 голосов
/ 17 августа 2011
  1. У вас нет $_POST['submit'], поскольку ваш submit на самом деле CLogin или CNewUser
  2. Вы должны попробовать:

    switch ($_POST['submit']){
        case 'Sign In':
        .....
        case 'New User':
        .....
    }
    
    <td><input type="submit" name="submit" value="Sign In"><input type="submit" name="submit" value="New User"></td>
    
0 голосов
/ 17 августа 2011

Заменить $_POST['submit'] на $_POST['CLogin'].И значения регистра должны быть равны input значению, поэтому вы теперь получаете: $_POST['CLogin'] => 'Sign In'.

Правило большого пальца: $_POST клавиши - это name входов, значения - valueвходов

...