Foros del Web » Programando para Internet » PHP »

no funciona con php 5

Estas en el tema de no funciona con php 5 en el foro de PHP en Foros del Web. Estoy usando ajax y php para hacer una ventana de login. Entonces tengo 2 archivos form_login.php que es un formulario y el cual por medio ...
  #1 (permalink)  
Antiguo 09/11/2011, 11:39
 
Fecha de Ingreso: marzo-2006
Mensajes: 78
Antigüedad: 18 años, 1 mes
Puntos: 1
no funciona con php 5

Estoy usando ajax y php para hacer una ventana de login.

Entonces tengo 2 archivos form_login.php que es un formulario y el cual por medio de ajax verifica el usuario y contraseña en login.php, entonces ese valor lo verifica y muestra bienvenidos.php.

Aca el codigo completo, este codigo funciona en php 4 pero en php 5 no me esta funcionando y ya revise y no le busco.

Si alguien tiene alguna pista se los agradezco. saludos.

form_login.php

<script type="text/javascript">
function lTrim(sStr){
while (sStr.charAt(0) == " ")
sStr = sStr.substr(1, sStr.length - 1);
return sStr;
}

function rTrim(sStr){
while (sStr.charAt(sStr.length - 1) == " ")
sStr = sStr.substr(0, sStr.length - 1);
return sStr;
}

function allTrim(sStr){
return rTrim(lTrim(sStr));
}

jQuery.fn.reset = function () {
$(this).each (function() { this.reset(); });
}

$(document).ready(function() {
$('#form1').submit(function() {
if (document.getElementById("user_id").value=="" || document.getElementById("pass_id").value=="" ) {
alert ("Faltan campos por llenar");
return false;
} else {
$.ajax({
type: 'POST',
url: $(this).attr('action'),
data: $(this).serialize(),
// Mostramos un mensaje con la respuesta de PHP
success: function(data) {
if (allTrim(data)=="true") {
$('#barra').append('<p class="navRight"></p>');
$('#menu1').load('menu.html');
$('#left').load('bienvenidos.php');
} else {
alert(allTrim(data));
alert("Usuario y/o Contraseña incorrectos");
$("#form1").reset();
}
}
})
return false;
}
});


});



</script>
<br>
<br>
<form action="login.php" method="post" id="form1">

<table width="600" border="0" align="center" cellpadding="0" cellspacing="10" bgcolor="#666666">
<tr>
<td colspan="4" align="center" class="blancoh">Login
</td>
<tr>
<td width="183">&nbsp;</td>
<td width="107" class="blanco">Usuario:</td>
<td width="147"><input name="user_id" id="user_id" type="text"></td>
<td width="143"></td>
</tr>
<tr>
<td></td>
<td class="blanco">Contraseña:</td>
<td><input name="pass_id" id="pass_id" type="password"></td>
<td></td>
</tr>
<tr>
<td colspan="4" align="center"><input name="enviar" id="enviar" type="submit" value="Enviar">
</td>
<tr>

</table>
</form>


login.php

<?php
session_start();
include ("accss.php");
$dbh=mysql_connect ($server, $user, $pass, $base_datos);
if (!$dbh) {
die('No ha sido posible establecer la conexión: ' . mysql_error());
}

$user_id=$_POST['user_id'];
$pass_id=$_POST['pass_id'];


if (isset($user_id) && isset($pass_id))
{
// Si el usuario ha intentado hacer log in
$query = "select * from usuarios "
."where usuario='$user_id' "
." and password='$pass_id' ";
$result = mysql_db_query($base_datos, $query);

if (mysql_num_rows($result) >0)

{
// si están en la base de datos registra la id de usuario
$valid_user_id = $user_id;
$_SESSION['valid_user_id']=$valid_user_id;

}
}
if (isset($_SESSION['valid_user_id']))
{
echo "true";
} else {

echo "false";
}

?>
  #2 (permalink)  
Antiguo 09/11/2011, 12:10
 
Fecha de Ingreso: junio-2006
Mensajes: 133
Antigüedad: 17 años, 10 meses
Puntos: 5
Respuesta: no funciona con php 5

Hola !!!

Puede ser desde que utilices alguna funcion de php4 que no esta en php5 hasta la configuracion del php.ini en cada version.

En la version 5 coloca que te muestre todo (warnings, errores, etc.) y asi puedes ubicarte un poco mas.
__________________
http://www.hostingyweb.net
  #3 (permalink)  
Antiguo 09/11/2011, 13:07
Avatar de CesarHC  
Fecha de Ingreso: junio-2011
Ubicación: localhost
Mensajes: 566
Antigüedad: 12 años, 10 meses
Puntos: 56
Respuesta: no funciona con php 5

Pero bota algun error?.
__________________
Solo la práctica no te traicionara ¡¡¡¡¡¡

Seguir el camino tu debes PHP The Right Way.
  #4 (permalink)  
Antiguo 09/11/2011, 16:42
 
Fecha de Ingreso: marzo-2006
Mensajes: 78
Antigüedad: 18 años, 1 mes
Puntos: 1
Respuesta: no funciona con php 5

habilite Display errors y log errors y marcaba error de deprecated de mysql_db_query, pero ya cambie esto en mi codigo. hay una partedel codigo

if (allTrim(data)=="true") {
$('#barra').append('<p class="navRight"></p>');
$('#menu1').load('menu.html');
$('#left').load('bienvenidos.php');
} else {
alert(allTrim(data));
alert("Usuario y/o Contraseña incorrectos");
$("#form1").reset();
}

En esta parte comparo lo que me regresa data=="true", y en caso que no sean iguales envio un alert para ver que dato me envia y el dato es "true" y y como pienso que podria tener basura a los lados pues le aplico un allTrim, pero nada no funciona el condicional.

Alguna idea??

gracias
  #5 (permalink)  
Antiguo 09/11/2011, 16:44
 
Fecha de Ingreso: marzo-2006
Mensajes: 78
Antigüedad: 18 años, 1 mes
Puntos: 1
Respuesta: no funciona con php 5

Tambien estoy usando firebug para monitorear los GET, POST y sus respuestas.
  #6 (permalink)  
Antiguo 09/11/2011, 17:01
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 14 años, 11 meses
Puntos: 322
Respuesta: no funciona con php 5

Hay una gran diferencia entre true como valor booleano y true como valor string, que es como lo estás tratando, checa eso.
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #7 (permalink)  
Antiguo 10/11/2011, 08:02
 
Fecha de Ingreso: marzo-2006
Mensajes: 78
Antigüedad: 18 años, 1 mes
Puntos: 1
Respuesta: no funciona con php 5

"true" lo utilizo como string, es el valor que devuelve login.php y lo comparo en form_login.php

$.ajax({
type: 'POST',
url: $(this).attr('action'),
data: $(this).serialize(),
// Mostramos un mensaje con la respuesta de PHP
success: function(data) {
if (allTrim(data)=="true") {
$('#barra').append('<p class="navRight"></p>');
$('#menu1').load('menu.html');
$('#left').load('bienvenidos.php');
} else {
alert(allTrim(data));
alert("Usuario y/o Contraseña incorrectos");
$("#form1").reset();
}
}

Otros datos es que este codigo corre en un servidor web del cual pagamos renta pero en mi servidor local no esta funcionando con php 5.3.5 pero si lo corro con php 4 si funciona. Segun estoes configuracion del servidor pero no tengo ni la menos idea.

Alguna sugerencia?

gracias

Etiquetas: select
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 22:36.