Autor
|
Tema: Sacar un unico dato de un registro en una tabla. (Leído 21,512 veces)
|
Falso Positivo
|
por cierto, como podria añadirle a este codigo, otro codigo para evitar que me duplicara usuarios y emails?
Debes consultar si el email existe, en base a eso insertar o no el nuevo usuario. <?php include ('config.php'); $usuario=$_POST['usuario']; $password=$_POST['password']; $sexo=$_POST['sexo']; $mail=$_POST['mail']; // Verificar si existe el email $q1= mysql_query("SELECT email FROM login WHERE email ='$mail' "); if( $num_rows >0 ){ $db_handle = "INSERT INTO login (userid, user_pass, sex, email) VALUES ('$usuario','$password','$sexo','$mail')"; } else { Header("Location: registrarseok.php"); } ?>
|
|
|
En línea
|
Don't worry, be hacked....
|
|
|
XXXXXX
|
hay algo que no entiendo..
ese $q1 a donde se refiere? eso son los datos de conexion?
porque lo que asigna la conexion es $db_handle que seria lo mismo a $db_handle = mysql_connect($server, $user_name, $password); y $db_found = mysql_select_db($database, $db_handle);
esto crea la conexion.
envez de ser $q1 no tendria que ser db_found?
PD:; añado que aunque se duplique el mail, sigue ingresando los datos
|
|
« Última modificación: 21 Junio 2010, 20:54 pm por tomeu00 »
|
En línea
|
|
|
|
~ Yoya ~
Wiki
Desconectado
Mensajes: 1.125
|
man, eso es solo una conexión mysql y luego selecciona una base de datos...
|
|
|
En línea
|
Mi madre me dijo que estoy destinado a ser pobre toda la vida. Engineering is the art of balancing the benefits and drawbacks of any approach.
|
|
|
[u]nsigned
Desconectado
Mensajes: 2.397
JS/Node developer
|
por cierto, como podria añadirle a este codigo, otro codigo para evitar que me duplicara usuarios y emails?
Al margen de la logica que uses en el script PHP, yo te recomendaria tambien que edites la estructura de tu tabla, poniendo los campos userid y email como UNIQUE (unico) y asi sera elpropio MySQL el que no permitira registros repetidos, devolviendo el numero de error 1062, elcualpodes averiguar desde php con mysql_errno()Saludos
|
|
|
En línea
|
No hay atajo ante la duda, el misterio se hace aquí... Se hace carne en cada uno, el misterio es existir!
|
|
|
XXXXXX
|
no me ables de cosas tan complicadas jajaja que justo estoy entrando en php expresate de forma que lo pueda entender un noob. gracias por toda vuestra paciencia y dedicacion al intentar ayudarme
|
|
|
En línea
|
|
|
|
~ Yoya ~
Wiki
Desconectado
Mensajes: 1.125
|
la forma que dice @ "."] [/quote] es la mas apropiada xD...
|
|
|
En línea
|
Mi madre me dijo que estoy destinado a ser pobre toda la vida. Engineering is the art of balancing the benefits and drawbacks of any approach.
|
|
|
XXXXXX
|
sigo sin comprender su explicacion...
la database no la puedo tocar, si la toco peta todo el otro sistema, por eso tengo que hacerlo mediante codigo, o javascript o alguna cosa, que me permita evitar duplicados
|
|
|
En línea
|
|
|
|
MinusFour
|
Las dos soluciones que te presentan son estás: hacer unique el campo de email o revisar que exista el email antes de registrarlo. Si no quieres mover nada a la BD, lo que te recomiendo entonces es que revises si hay algún registro con ese email, lo cual lo haces con mysql_num_rows... <?PHP registrar(); } else{ echo "Error: el email ya está en uso"; } ?>
|
|
|
En línea
|
|
|
|
[u]nsigned
Desconectado
Mensajes: 2.397
JS/Node developer
|
No pretendo iniciar discusiones estúpidas ni nada por el estilo, pero me parece bueno ir metiendoles la idea de eficiencia a los novatos. Y me pare muy poco eficiente realizar una consulta solo para saber si ya existe el mail, y en caso contrario realizar otra rutina para insertar los registros. Ademas si tenes phpMyAdmin establecer un campo como UNIQUE es cuestion de dos clicks <?php registrar(); } else{ echo "Error: el email ya está en uso"; } ?>
Saludos
|
|
|
En línea
|
No hay atajo ante la duda, el misterio se hace aquí... Se hace carne en cada uno, el misterio es existir!
|
|
|
XXXXXX
|
ya ya, si no te digo que no, pero lo uso unido a otro sistema, por eso no puedo permitirme hacer eso, aun así tu idea esta muy bien. sobre el codigo <?php if(mysql_num_rows(mysql_query("SELECT email FROM tabla WHERE email = '$email' LIMIT 1")){ registrar(); } else{ echo "Error: el email ya está en uso"; } ?>
quedaria algo asi? <?php include ('config.php'); $usuario=$_POST['usuario']; $password=$_POST['password']; $sexo=$_POST['sexo']; $mail=$_POST['mail']; // Verificar si existe el email
if(mysql_num_rows(mysql_query("SELECT email FROM tabla WHERE email = '$email' LIMIT 1")){ registrar(); } else{ echo "Error: el email ya está en uso"; } ?>
ese registrar() es donde ingreso el php con los datos de ingreso? ej envia.php
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Crear link con dato de un registro de una bd
« 1 2 3 4 »
PHP
|
Brian1511
|
30
|
9,906
|
25 Julio 2013, 19:29 pm
por EFEX
|
|
|
Cómo Seleccionar un dato si existe en otra tabla?
Bases de Datos
|
WHK
|
4
|
6,184
|
26 Agosto 2013, 17:56 pm
por 1mpuls0
|
|
|
ayuda con editar un dato en tabla con sqlite
Java
|
clupin
|
0
|
1,485
|
27 Julio 2014, 22:02 pm
por clupin
|
|
|
Actualizar un dato de una tabla
PHP
|
bgnumis
|
4
|
3,262
|
1 Abril 2015, 20:54 pm
por engel lex
|
|
|
Sacar dato de una select sql en php y html
PHP
|
jamatbar
|
1
|
2,297
|
21 Noviembre 2020, 09:06 am
por jamatbar
|
|