PHP - (mysql_num_rows($resultado)>0)

   
Vista:

(mysql_num_rows($resultado)>0)

Publicado por Juan Cubas (4 intervenciones) el 03/04/2013 23:12:01
Tengo el siguiente problema, estoy haciendo mi primera reguistro de datos en base de datos y me aparese parte del codigo de texto en el navegador en lugar de cumplir con las especificaciones,

esto es lo que se muestra en pantalla

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<html>
<head>
    <title>Registro</title>
</head>
<body>
<?php
    // Configura los datos de tu cuenta
    $dbhost='localhost';
    $dbusername='';
    $dbuserpass='';
    $dbname='pasantias';
    // Conexión a la base de datos
    mysql_connect ($dbhost, $dbusername, $dbuserpass);
    mysql_select_db($dbname) or die("Cannot select database");
    // Preguntaremos si se han enviado ya las variables necesarias
    if (isset($_POST["nick"])) {
    $nick = $_POST["nick"];
    $clave = $_POST["clave"];
    $uadmin = $_POST["uadmin"];
    $cadmin = $_POST["cadmin"];
    // Hay campos en blanco
    if($nick==NULL|$clave==NULL|$uadmin==NULL|$cadmin==NULL) {
    echo "un campo está vacio";
    }else
 
 
 
    {
    // ¿Coinciden las contraseñas?
    // Comprobamos si el nombre de usuario o la cuenta de correo ya existían
    $checknick = mysql_query("SELECT nick FROM login WHERE nick='$nick'");
    $nick_exist = mysql_num_rows($checknick);
    if ($nick_exist!=0) {
    echo "EL nombre de usuario ya en uso";
    }
 
 
    else{
     if $consulta="SELECT * from login where clave=".$cadmin;
$resultado=mysql_query($consulta) or die (mysql_error());
if (mysql_num_rows($resultado)>0)
{
$query = "INSERT INTO login nick, clave VALUES('$nick','$clave')";
    mysql_query($query) or die(mysql_error());
    echo "El usuario $username ha sido registrado de manera satisfactoria";
    echo "Pincha en login para loguearte";
 
} else {
print(Contraceña de administrador incorrecta);
}
    }
    //Todo parece correcto procedemos con la inserccion
 
    }
 
    ?> Reemplace este texto
 
	</body>
</html>


el error comienza desde el 0 de if mysql_num_rows ($resultado)>0)
gracias por la ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

(mysql_num_rows($resultado)>0)

Publicado por xve (5516 intervenciones) el 04/04/2013 08:04:24
Hola Juan, no te entiendo muy bien... nos indicas que aparece el código php en el navegador, o que en esa linea te indica un error? si es así, que error te indica?

Creo que aquí tienes un error:
1
if $consulta="SELECT * from login where clave=".$cadmin;

Si es un if tiene que ir entre paréntesis y no puede finalizar con un punto y coma.

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

(mysql_num_rows($resultado)>0)

Publicado por Iván (9 intervenciones) el 04/04/2013 16:50:14
Hola,

te sobre el if en if $consulta="SELECT.....", imagino se te habrá colado.

Al margen de eso tienes un error en la consulta:

1
$consulta="SELECT * from login where clave=".$cadmin;


debe ser
1
$consulta = 'SELECT id FROM login WHERE clave="' . mysql_real_escape_string($cadmin) . '"';


Es decir:
· evita siempre un SELECT * ; con el campo id (o cualquier otro presente en la tabla pero que no revele ningún tipo de información comprometida)
· los campos que no son numéricos es preciso encerrarlos entre comillas
· siempre, siempre, protege los valores que te vengan por un formulario (mysql_real_escape_string())

Te dejo también un tutorial de programación en PHP.

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar