PHP - Evitar duplicaciones de datos,

 
Vista:
Imágen de perfil de Kevin

Evitar duplicaciones de datos,

Publicado por Kevin (11 intervenciones) el 21/07/2014 22:41:45
Hola comunidad de LWP, el día de hoy recurro hacia ustedes para la petición de "VARIOS" códigos que necesito para montar mi web.
Primeramente, ando haciendo un registro de usuarios con PHP, pero necesito un código para que me mande un error al ingresar un dato repetido.
Porfavor darme el código que necesito para evitar estó, y que salga el mensaje de "echo", le dejos mi código para que al igual me ayuden a que me digan cual código y donde colocarlo.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
include("conexion.php");
if(isset($_POST['nombre']) && !empty($_POST['nombre']) &&
isset($_POST['user']) && !empty($_POST['user']) &&
isset($_POST ['pw']) && !empty($_POST['pw'])&&
isset($_POST['pw2']) && !empty($_POST['pw2']) &&
isset($_POST['email']) && !empty($_POST['email']) &&
$_POST['pw'] == $_POST['pw2'])
{
 
	$con=mysql_connect($host,$user,$pw)
	or die("Problemas al conectar con el server");
 
	mysql_select_db($db,$con)
	or die("Problemas al conectar db");
 
	mysql_query("INSERT INTO registro (NOMBRE,USER,PW,EMAIL)
VALUES ('$_POST[nombre]','$_POST[user]','$_POST[pw]','$_POST[email]')",$con);
		echo '<center><div class="alert alert-info"><b>¡Felicidades!:</b> Te haz registrado con exito, ser&aacute;s redirigido a la p&aacute;gina de logeo.</center></div><br>
		<META HTTP-EQUIV="Refresh" CONTENT="3; URL=/iniciarsesion">';
 
	}else{
	echo '<div class="alert alert-danger"><center><b>¡Verifica!:</b> Al parecer hay campos sin rellenar, o las contraseñas no coinciden.</center></div>';
	}
 
?>
Al igual me gustaría incriptar la contraseña para tener mas seguridad, se que estó se obtiene con MD5, pero no se como colocarlo ni en que línea. Código php:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
include("conexion.php");
if(isset($_POST['nombre']) && !empty($_POST['nombre']) &&
isset($_POST['user']) && !empty($_POST['user']) &&
isset($_POST ['pw']) && !empty($_POST['pw'])&&
isset($_POST['pw2']) && !empty($_POST['pw2']) &&
isset($_POST['email']) && !empty($_POST['email']) &&
$_POST['pw'] == $_POST['pw2'])
{
 
	$con=mysql_connect($host,$user,$pw)
	or die("Problemas al conectar con el server");
 
	mysql_select_db($db,$con)
	or die("Problemas al conectar db");
 
	mysql_query("INSERT INTO registro (NOMBRE,USER,PW,EMAIL)
VALUES ('$_POST[nombre]','$_POST[user]','$_POST[pw]','$_POST[email]')",$con);
		echo '<center><div class="alert alert-info"><b>¡Felicidades!:</b> Te haz registrado con exito, ser&aacute;s redirigido a la p&aacute;gina de logeo.</center></div><br>
		<META HTTP-EQUIV="Refresh" CONTENT="3; URL=/iniciarsesion">';
 
	}else{
	echo '<div class="alert alert-danger"><center><b>¡Verifica!:</b> Al parecer hay campos sin rellenar, o las contraseñas no coinciden.</center></div>';
	}
 
?>
Y por último me gustaría hacer que en mi upload de imagenes, al subir imagenes el nombre se cambiará al igual el nombre al que tubiera el originall (Al subir imagen cambiar nombre) con MD5, le dejo el código idiganme que pongo y en que línea porfavor.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php
	$formatos = array('.jpg', '.raw', '.psd', '.tiff','.xcf','.gif','.png','.eps','.pcx','.dng','.wmp','.psb','.jp2','.pict');
	$directorio = 'archivos';
	$contArchivos = 0;
	if (isset($_POST['boton'])){
 
			$nombreArchivo = $_FILES['archivo']['name'];
			$nombreTmpArchivo = $_FILES['archivo']['tmp_name'];
			$ext = substr($nombreArchivo, strrpos($nombreArchivo, '.'));
		if (in_array($ext, $formatos)){
			if (move_uploaded_file($nombreTmpArchivo, "archivos/$nombreArchivo")){
 
						echo '<div class="identification animated bounceInDown">';
						echo '<br />';
						echo '<div class="cuadrogris6">';
						echo "Felicidades, tú archivo se ha subido correctamente<br />";
						echo "<b>Link imagen:</b>";
						echo '<div style="width: 50%; height: auto; line-height: 20px; margin: 2px auto; padding: 5px 20px; border: 1px solid grey; border-radius: 5px; background: lightgrey; color: black;">';
						echo "<b>http://kevinsolischh.x10.mx/Subirarimagenes/archivos/$nombreArchivo</b>";
						echo '</div>';
						echo "</div>";
 
					}else{
						echo '<div class="identification animated bounceInDown">';
						echo '<br />';
						echo '<div class="cuadrogris5">';
						echo "Ocurrio un error, recarga la p&aacute;gina.";
						echo '</div>';
						echo '</div>';
					}
						}else{
						echo '<div class="identification animated bounceInDown">';
						echo '<br />';
						echo '<div class="cuadrogris5">';
						echo "<b>Ocurrio un error, reintenta subirla de nuevo. (Solo im&aacute;genes.)</b>";
						echo '</div>';
						echo '</div>';
					}
				}
?>
Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Salvador

Evitar duplicaciones de datos,

Publicado por Salvador (125 intervenciones) el 22/07/2014 01:44:16
Respecto a tu primer peticion, sera muy dificil que alguien te "de" el codigo completo para hacer algo, basicamente esto es ayuda para hacer algo,,, y mi ayuda ahi te va...

Primer pregunta, para evitar duplicados lo que tienes que hacer es revisar si existe antes de ingresar el nuevo registro

if select * from registro >0 then echo "el valor existe" else insert into.....

pregunta dos,,,,

no es incriptar, es encriptar y seria de la siguiente forma

sha1(md5(trim($_POST['pw'])));

y por ultimo, segun yo ya estas tomando el nombre real del archivo mediante la instruccion

move_uploaded_file($nombreTmpArchivo, "archivos/$nombreArchivo")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Kevin

Evitar duplicaciones de datos,

Publicado por Kevin (11 intervenciones) el 28/07/2014 05:23:39
Pero no quiero tomar el nombre original, quiero cambiarlo por uno menos corto con números aletorios :)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Salvador

Evitar duplicaciones de datos,

Publicado por Salvador (125 intervenciones) el 28/07/2014 06:50:16
solo cambia el segundo parametro de la funcion con el nuevo nombre,,,

move_uploaded_file($nombreTmpArchivo, $NUEVO_NOMBRE)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar