表单什么都不做,不发送任何PHP

时间:2015-03-04 03:46:08

标签: php mysql forms login

我是新手,可以使用一些帮助。你看,我在登录页面中有一个表单,但是当我点击按钮时它什么也没做,甚至没有错误信息。它应该将我发送到名为“formulario.php”的页面。我只是找不到错误,我看过很多教程和书籍。

这是我的php文件:login.php

<?php
#connect to mysql
$conexion = mysql_connect("localhost", "root", "admin") or die ("PROBLEMAS AL INTENTO ESTE DE CONEXION");

#connect to database
mysql_select_db("generatedata", $conexion) or die ("ERROR AL TRATAR DE CONECTAR CON DATABASE");

#form parameters
$nombre = $_REQUEST['username'];
$pass = $_REQUEST['pass'];    

#query to select users from the database
$estandar = mysql_query("SELECT * FROM usuarios where usuario = '.$nombre.' and `contrasena` = '.$pass.'") or die(mysql_error());

if ($row = mysql_fetch_array($estandar)){

    header("Location: formulario.php");
}else {
    echo "error";#header("Location: 404.html");
}   

?>

和我的表格

<form action="login.php" method="post" >
<table class="table">
      <tr>
        <td>Nombre:</td>
        <td><input type="text" class="form-control" name="username" value="" id="username"> </td>
      </tr>
        <td>contraseña:</td>
        <td><input type="password" class="form-control" name="pass" value="" id="password"> </td>
      </tr>
</table>

    <button type="submit" name="login" value="login" class="btn btn-primary">Log in</button>
    <button type="reset" name="res" value="res" class="btn btn-primary">LImpiar</button>
</form>

2 个答案:

答案 0 :(得分:0)

您的代码在我的计算机上运行良好。意味着您的数据是问题。试试这个,让我们知道$sql

的价值
<?php
#connect to mysql
$conexion = mysql_connect("localhost", "root", "admin") or die ("PROBLEMAS AL INTENTO ESTE DE CONEXION");

#connect to database
mysql_select_db("generatedata", $conexion) or die ("ERROR AL TRATAR DE CONECTAR CON DATABASE");

#form parameters
$nombre = $_REQUEST['username'];
$pass = $_REQUEST['pass'];    

#query to select users from the database
$sql = "SELECT * FROM usuarios where usuario = '".$nombre."' and `contrasena` = '".$pass."'";

print $sql;

$estandar = mysql_query($sql) or die(mysql_error());

if ($row = mysql_fetch_array($estandar)){

    header("Location: formulario.php");
}else {
    echo "error";
}   

答案 1 :(得分:0)

请检查选择查询热线...

$estandar = mysql_query("SELECT * FROM usuarios where
usuario = '".$nombre."' and `contrasena` = '".$pass."'") or die(mysql_error());

实际上当你检查登录目的时你必须使用 mysql_num_rows 而不是mysql_fetch_Array ..