Foros del Web » Programando para Internet » PHP »

Ayuda con scrip PHP

Estas en el tema de Ayuda con scrip PHP en el foro de PHP en Foros del Web. Hola, tengo el siguiente scrip de php Código PHP: <? include( "conectar.phtml" ); $conn = Conectarse (); $result = mysql_query ( "select * from usuarios" , $conn ); ...
  #1 (permalink)  
Antiguo 30/03/2004, 18:52
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 7 meses
Puntos: 406
Exclamación Ayuda con scrip PHP

Hola, tengo el siguiente scrip de php

Código PHP:
<?
include("conectar.phtml");
$conn=Conectarse();
$result=mysql_query("select * from usuarios",$conn);

$ssql "SELECT * FROM usuarios WHERE usuario='$usuario' and password='$password'";

$rs mysql_query($ssql,$conn); 

if (
mysql_num_rows($rs)!=0){ 
    
session_start(); 
    
session_register("autentificado"); 
    
$autentificado "SI"
    
header ("Location: index04.htm");
}else {
    
header("Location: index.phtml?errorusuario=si");

mysql_free_result($rs); 
mysql_close($conn); 
?>
el problema es que cuando lo ejecuto me sale el siguiente error:

Notice: Undefined variable: usuario in Illusion of Manga\ejemplos\control.phtml on line 7

Notice: Undefined variable: password in Illusion of Manga\ejemplos\control.phtml on line 7

Warning: Cannot modify header information - headers already sent by (output started at Illusion of Manga\ejemplos\control.phtml:7) in Illusion of Manga\ejemplos\control.phtml on line 24

Los campos de la base de datos son "usuario" y "password" respectivamente. lo que quiero saber que es lo que esta mal en en codigo, de antemano gracias
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #2 (permalink)  
Antiguo 30/03/2004, 19:57
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 22 años
Puntos: 1
Mira ...

Te digo que he aprendido a usar las variables globales de PHP como es el caso de $_POST y $_GET que son de gran importancia sobre todo si no tienes configurado el PHP con la directiva REGISTER GLOBALS a ON. Ahora estuve revisando tu código y te corregí unas cosas:
Código PHP:
<?
include("conectar.phtml");
$conn=Conectarse();
$result=mysql_query("select * from usuarios",$conn);
//Aquí tenias puesto esto usuario='$usuario' AND password ='$password' y los cambie por usuario='".$usuario."' and password='".$password."'
$ssql "SELECT * FROM usuarios WHERE usuario='".$usuario."' and password='".$password."'";
$rs mysql_query($ssql,$conn);
if (
mysql_num_rows($rs)!=0){
    
session_start();
    
session_register("autentificado");
    
$autentificado "SI";
    
header ("Location: index04.htm");
}else {
    
header("Location: index.phtml?errorusuario=si");
}
mysql_free_result($rs);
mysql_close($conn);
?>
ahora no se de donde vienen esas variables $usuario y $contraseña. Si es por URL deberías usar el script de esta forma $_GET['usuarios'] y $_GET['password'] y si es mediante un formulario de esta otra forma: $_POST['usuarios'] y $_POST['password']. Yo lo uso así y nunca me ha dado problemas.

Salu2
__________________
Ing. Reynier Pérez Mira
  #3 (permalink)  
Antiguo 30/03/2004, 20:10
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 7 meses
Puntos: 406
Gracias por contestarme, te lo agradesco, bueno las variables bienen de un formulario, el cual es el siguiente:
Código:
<form action="control.phtml" method="POST"> 
<table align="center" width="225" cellspacing="2" cellpadding="2" border="0"> 
<tr> 
<td align="right">USER:</td> 
<td><input type="Text" name="usuario" size="8" maxlength="50"></td> 
</tr> 
<tr> 
<td align="right">PASSWD:</td> 
<td><input type="password" name="password" size="8" maxlength="50"></td> 
</tr> 
<tr> 
<td colspan="2" align="center"><input type="Submit" value="ENTRAR"></td> 
</tr> 
</table>
Ahora, disculpa pero apenas estoy comensando a entender php, pero no entendi muy bien de lo que em dices si biene de un formulario, en tal caso como seria, te agradeceria si me lo explicaras, de antemano, gracias
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #4 (permalink)  
Antiguo 30/03/2004, 20:27
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 22 años
Puntos: 1
Pues ...

Bueno en ese caso si me dices que las variables vienen de un formulario tu código quedaría así:
Código PHP:
<?
include("conectar.phtml");
$conn=Conectarse();
$result=mysql_query("select * from usuarios",$conn);
//Aquí tenias puesto esto usuario='$usuario' AND password ='$password' y los cambie por usuario='".$usuario."' and password='".$password."'
$ssql "SELECT * FROM usuarios WHERE usuario='".$_POST['usuario']."' and password='".$_POST['password']."'";
$rs mysql_query($ssql,$conn);
if (
mysql_num_rows($rs)!=0){
    
session_start();
    
session_register("autentificado");
    
$autentificado "SI";
    
header ("Location: index04.htm");
}else {
    
header("Location: index.phtml?errorusuario=si");
}
mysql_free_result($rs);
mysql_close($conn);
?>
así de sencillo.
Salu2

PD: Cuando tengas dudas estudia y en última instancia pregunta aquí pues así es como he aprendido yo.
__________________
Ing. Reynier Pérez Mira
  #5 (permalink)  
Antiguo 30/03/2004, 20:31
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 7 meses
Puntos: 406
gracias, la verdad es que he estado buscando la solucion del problema en tutoriales, fqs y varios documentos asi como paginas, pero no lograba encontrar el problema, y es por eso de que ya mejor preferi preguntar.

de nuevo gracias
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:09.