Edición de datos con usuario y password
De ActionApps Documentacion
Revisión del 21:11 3 dic 2007 de Adam (Discusión | contribuciones) (Nueva página: Dos cosas se necesitan, el script que hace la validación en la base de datos y leer este faq para comprender como se carga del formulario de edición con los datos de la persona susc...)
Dos cosas se necesitan, el script que hace la validación en la base de datos y leer este faq para comprender como se carga del formulario de edición con los datos de la persona suscrita
http://actionapps.org/faq/detail.shtml?x=1724
Al leer ese faq entenderá porque además se tiene que poner en el nodo s=C&e=a (por ejemplo, ustedes seguro pueden usar otro nodo) del modulo de sitio lo sgte
{include(http://www.myweb.org/form.shtml?my_item_id={my_item_id})}
Un ejemplo pueden verlo en http://www.asocam.org/index.shtml?s=C&e=d y en http://www.subud.net/dir.shtml
El script es
<?php $usuario=$_POST['usuario']; //recibe el valor del user que viene del formulario $password=$_POST['password']; // recibe el valor del password que viene del formulario $slice_id=pack('H*','74656d706c6174656d6f696d6d6f6973'); // convierte el ID hexadecimal del canal Directorio a formato binario if ($password!=""){ $password_crypt=crypt($password, 'xx');} // por si su password es nulo else {$password_crypt="";} $bd_host = "localhost"; $bd_usuario = "aadb_admin"; /*****cambiar***/ $bd_password = "xxxxxx"; /*****cambiar***/ $bd_base = "aadb_aadb2"; /*****cambiar***/ //$codigo=pack('H*',$id); // se usa para convertir el Id de un canal de formato binario a hexadecimal. Solo sirve en este caso para verificar $con = mysql_connect($bd_host, $bd_usuario, $bd_password) or die ("no me puedo conectar"); mysql_select_db($bd_base) or die ("no me puedo conectarme a esa base de datos"); // la consulta a los dos campos que tienen el user y el password. En este caso son los campos 'con_email.......' y 'password........' // el campo 'con_email.......' debe ser unico. Eso se establece en la configuracion del campo dentro de las AA $result=mysql_query("SELECT item.id from item JOIN slice ON slice.id=item.slice_id JOIN content as C1 ON C1.item_id=item.id JOIN content as C2 ON C2.item_id=item.id WHERE C1.field_id='con_email.......' AND C1.text='$usuario' AND C2.field_id='password........' AND C2.text ='$password_crypt' AND slice.id='$slice_id'") or die("consulta invalida"); $num_rows = mysql_num_rows($result); // numero de filas, debe salir uno si el campo 'con_email.......' fue configurado como unico en las AA if ($num_rows==1) { while ($row=mysql_fetch_array($result)) {$id = $row["id"]; // captura el id del item en formato binario } $id=(string)bin2hex($id);//convierte el id de formato binario a hexadecimal Header ("Location:http://www.aadb.org/index.shtml?s=C&e=a&als[my_item_id]=".$id); // carga el formulario de edición del item } else { print "el usuario no es único, contáctese con el administrador de este portal"; // mensaje de error :) } ?>