Foros del Web » Creando para Internet » Diseño web »

ayuda con error de script

Estas en el tema de ayuda con error de script en el foro de Diseño web en Foros del Web. hola , yo tenia esta web funcionando sin ningun problema, hasta q creo q mi hosting actualizo algunos modulos PHP , logre hacerla correr, pero ...
  #1 (permalink)  
Antiguo 17/01/2011, 21:21
 
Fecha de Ingreso: enero-2011
Mensajes: 3
Antigüedad: 6 años, 11 meses
Puntos: 0
ayuda con error de script

hola , yo tenia esta web funcionando sin ningun problema, hasta q creo q mi hosting actualizo algunos modulos PHP , logre hacerla correr, pero ahora me tira algunos errores primero en el logueo en esta linea:

// authenticate.

if (!get_magic_quotes_gpc()) {
$_POST['uname'] = addslashes($_POST['uname']);
}

$check = $db_object ("SELECT username, password FROM users WHERE username = '".$_POST['uname']."'"); // esta linea 36 me da el error
Fatal error: Function name must be a string in C:\xampp\htdocs\FMW\login.php on line 36

cabe mencionar q este script que uso cuando funcionó bien en su tiempo usaba un modulo de php que hacia referencia a DB.php, segun lo que lei este fue reemplazado por MDB2, asi es q tuve q eliminar la referencia db.php y generer un codigo nuevo para la conexion a la base de datos...

cualuier ayuda muy agradecido
  #2 (permalink)  
Antiguo 17/01/2011, 23:44
Avatar de danneg  
Fecha de Ingreso: agosto-2009
Ubicación: Todo un mundo de posibilidades
Mensajes: 856
Antigüedad: 8 años, 4 meses
Puntos: 48
Respuesta: ayuda con error de script

intenta declarar $_POST["uname"] antes de utilizarla

$uname = isset($_POST["uname"]) ? $_POST["uname"] : "contenido en caso que no exista";

no se de donde sacas ese valor, pero antes de utilizar un post asi como si nada debes validarlo!!

por lo demas no te entendi demasiado
__________________
- Daniel García (@dannegm)
- [follow me | fork me on github...]
  #3 (permalink)  
Antiguo 18/01/2011, 14:46
 
Fecha de Ingreso: enero-2011
Mensajes: 3
Antigüedad: 6 años, 11 meses
Puntos: 0
Respuesta: ayuda con error de script

Gracias por tu respuesta, voy a probar lo q dices y te comento
  #4 (permalink)  
Antiguo 18/01/2011, 14:57
 
Fecha de Ingreso: enero-2011
Mensajes: 3
Antigüedad: 6 años, 11 meses
Puntos: 0
Respuesta: ayuda con error de script

ya hice el cambio q me dijiste y aun tengo problemas, aca esta completo, me tira error = Fatal error: Call to a member function query() on a non-object in C:\xampp\htdocs\FMW\login.php on line 39

Cita:
<?php
// database connect script.
require 'db_connect.php';


?>

<html>
<head>

<title>Login</title>
</head>
<body>
<body bgcolor="#000000">

<p align="center"><img src="images/logo.gif">
<br>


<?php

if (isset($_POST['submit'])) { // if form has been submitted


/* check they filled in what they were supposed to and authenticate */
if(!$_POST['uname'] | !$_POST['passwd']) {
?><font color="#FFFFFF"><?php die('You did not fill in a required field.');
}

// authenticate.

if (!get_magic_quotes_gpc()) {
$_POST['uname'] = addslashes($_POST['uname']);
}

$uname = isset($_POST["uname"]) ? $_POST["uname"] : "contenido en caso que no exista";

$qry = "SELECT username, password FROM users WHERE username = '".$_POST['uname']."'";
$check = $db_object->query($qry);

if (mysql_error($check) || $check->numRows() == 0) {
?><font color="#FFFFFF"><?php die('That username does not exist in our database.');
}

$info = $check->fetchRow();

// check passwords match

$_POST['passwd'] = stripslashes($_POST['passwd']);
$info['password'] = stripslashes($info['password']);
$_POST['passwd'] = md5($_POST['passwd']);

if ($_POST['passwd'] != $info['password']) {
?><font color="#FFFFFF"><?php die('Incorrect password, please try again.');
}

// if we get here username and password are correct,
//register session variables and set last login time.


$_POST['uname'] = stripslashes($_POST['uname']);
$_SESSION['username'] = $_POST['uname'];
$_SESSION['password'] = $_POST['passwd'];

?>

<meta HTTP-EQUIV="Refresh" CONTENT="0; URL=main.php">


<?php


} else { // if form hasn't been submitted

?>


<br><br>



<form action="<?php echo $_SERVER['PHP_SELF']?>" method="post">
<table align="center" border="1" cellspacing="0" cellpadding="3">
<tr><td><font color="#ffffff">User:</td><td>
<input type="text" name="uname" maxlength="40">
</td></tr>
<tr><td><font color="#ffffff">Password:</td><td>
<input type="password" name="passwd" maxlength="50">
</td></tr>
<tr><td colspan="2" align="right">

<input type="submit" name="submit" value="Login">
</td></tr>
</table>
</form>

<?php
}
?>
</body>
</html>
  #5 (permalink)  
Antiguo 18/01/2011, 15:19
Avatar de danneg  
Fecha de Ingreso: agosto-2009
Ubicación: Todo un mundo de posibilidades
Mensajes: 856
Antigüedad: 8 años, 4 meses
Puntos: 48
Respuesta: ayuda con error de script

Bien, vamos por puntos

hay una etiqueta bbcode en este foro que sirve para los codigos como ese

[ HIGHLIGHT="PHP" ][ /HIGHLIGHT ]

bien, en segunda

no solo tienes un error, tienes bastantes

yo te recomendaria reescribir todo en lugar de reparar errores

yo te recomendaria que en lugar de utilizar ese framework para la base de datos, usaras la extencion mysqli ya que es mucho mas facil de utilizar, o en su defecto mysql

igual sobre el html, es muy obsoleto, te recomendaria que leyeras algunos tutoriales sobre xhtml y css

sobre el cambio que le hiciste fue solo la linea que te di, pero no esta bien colocada

el error que veo es sobre esta declaracion de objetos

$db_object->query($qry)

donde no encuentro donde esta declarado $db_obkect, por lo tanto supongo que ese seria el principal error a corregir
__________________
- Daniel García (@dannegm)
- [follow me | fork me on github...]
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 07:35.