Foros del Web » Programando para Internet » PHP »

Disponibilidad de usuario con xajax y php

Estas en el tema de Disponibilidad de usuario con xajax y php en el foro de PHP en Foros del Web. Hola a todos Me he copiado un codigo bastante bueno acerca de la disponibilidad de usuario utilizando xajax y php y lo quise poner a ...
  #1 (permalink)  
Antiguo 07/09/2009, 07:51
 
Fecha de Ingreso: agosto-2008
Mensajes: 272
Antigüedad: 15 años, 7 meses
Puntos: 1
Disponibilidad de usuario con xajax y php

Hola a todos

Me he copiado un codigo bastante bueno acerca de la disponibilidad de usuario utilizando xajax y php y lo quise poner a prueba en mi pagina web pero no funciona veran en la pagina donde lo copie solo decia tenia que hacer una consulta para que me verificara si ese usuario ya existia o no poes lo intente pero no funciona espero me puedan ayudar gracias

Código:
function comprobar_permitidos($cadena){
$permitidos = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_";
for ($i=0; $i<strlen($cadena); $i++){

if (strpos($permitidos, substr($cadena,$i,1))===false){

return false;
}
} 

return true;
} 
//Aqui es donde se supone que solo tendria que hacer una consulta para verificar la disponibilidad de usuarios
function comprobar_repetidos($cadena){
$sql=mysql_query("select * from usuarios where nick='$_POST[usuario]'");
while($row = mysql_fetch_array($sql)) 
{ 
if($cadena == $row['nick']){
return false;
}else
{	return true;
}}
}
function validar_usuario($entrada){
//instanciamos el objeto para generar la respuesta con ajax
$respuesta = new xajaxResponse();

if ($entrada == ""){
//escribimos en la capa con id="mensaje" que no se ha escrito nombre de usuario
$respuesta->assign("mensaje","innerHTML","Debes escribir algo como nombre de usuario");
//Cambiamos a rojo el color del texto de la capa mensaje
$respuesta->assign("mensaje","style.color","red");
}elseif (!comprobar_permitidos($entrada)){
//escribimos en la capa con id="mensaje" el error que el usuario tiene caracteres permitidos
$respuesta->assign("mensaje","innerHTML","El nombre de usuario tiene caracteres no permitidos");
//Cambiamos a rojo el color del texto de la capa mensaje
$respuesta->assign("mensaje","style.color","red");
}elseif (!comprobar_repetidos($entrada)){
//escribimos en la capa con id="mensaje" el error que el usuario está repetido
$respuesta->assign("mensaje","innerHTML","El nombre de usuario escrito ya está en uso");
//Cambiamos a rojo el color del texto de la capa mensaje
$respuesta->assign("mensaje","style.color","red");
}else{
//es que todo ha ido bien
//escribimos en la capa con id="mensaje" que todo ha ido bien
$respuesta->assign("mensaje","innerHTML","Todo correcto");
//Cambiamos a azul el color del texto de la capa mensaje
$respuesta->assign("mensaje","style.color","blue");
}

//tenemos que devolver la instanciación del objeto xajaxResponse
return $respuesta;
}

//registramos la función creada anteriormente al objeto xajax
$xajax->registerFunction("validar_usuario");

//El objeto xajax tiene que procesar cualquier petición
$xajax->processRequest();
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
<?php
//En el <head> indicamos al objeto xajax se encargue de generar el javascript necesario
$xajax->printJavascript("xajax/");
?>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="thickbox.js"></script>
<link rel="stylesheet" href="thickbox.css" type="text/css" media="screen" />
</head>
<body>

<input alt="#TB_inline?height=300&width=700&inlineId=myOnPageContent " title="Registro del Usuarios" class="thickbox" type="button" value="Show" />  

<div id="myOnPageContent" class="oculto">

<form id="formulario" name="formulario" method="post" action="registrar.php"  >
  <table border="0">
    <tr>
      <th scope="col">*Nick:</th>
      <td><input type="text" name="usuario" size="20" onchange="javascript:xajax_validar_usuario(document.formulario.usuario.value)" /> <div id="mensaje"></div></td>
  #2 (permalink)  
Antiguo 08/09/2009, 21:51
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: Disponibilidad de usuario con xajax y php

Hola
Pues yo creo que falta algo más
La variable $xajax es una instancia de clase, la pregunta es
donde esta esa clase? donde la instancias?
Pues si copio tu código y lo ejecuto me da este mensaje
Fatal error: Call to a member function registerFunction() on a non-object in C:\server\htdocs\test.php on line 79
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 17:38.