elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Impedir que se duplique informacion en mi base de datos sql
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Impedir que se duplique informacion en mi base de datos sql  (Leído 1,447 veces)
freespace16

Desconectado Desconectado

Mensajes: 12


Ver Perfil
Impedir que se duplique informacion en mi base de datos sql
« en: 6 Diciembre 2015, 20:48 pm »

Hola, estoy trabajando en una pagina que esta vinculada a un software que en este caso es un juego en el que se loguean a traves de la pagina osea que si te registraste en la pagina como usuario ej: pepito y tu contraseña; al momento de entrar en el juego coloques lo mismo y entres. Pero para eso necesito que la informacion osea username no se pueda duplicar.

Lo que quiero es que si alguien coloca pepito y ya ese username existe salga "este usuario ya existe". Como lo hago?? aqui esta el codigo de la pagina de registro. registro.php

Código
  1. <?php require_once('Connections/freespace.php'); ?>
  2. <?php
  3. if (!function_exists("GetSQLValueString")) {
  4. function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
  5. {
  6.  if (PHP_VERSION < 6) {
  7.    $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
  8.  }
  9.  
  10.  $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
  11.  
  12.  switch ($theType) {
  13.    case "text":
  14.      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
  15.      break;    
  16.    case "long":
  17.    case "int":
  18.      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
  19.      break;
  20.    case "double":
  21.      $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
  22.      break;
  23.    case "date":
  24.      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
  25.      break;
  26.    case "defined":
  27.      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
  28.      break;
  29.  }
  30.  return $theValue;
  31. }
  32. }
  33.  
  34. $editFormAction = $_SERVER['PHP_SELF'];
  35. if (isset($_SERVER['QUERY_STRING'])) {
  36.  $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
  37. }
  38.  
  39. if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form")) {
  40.  $insertSQL = sprintf("INSERT INTO usuarios (usuario, nombres, apellidos, contrasena, tipo, dia, mes, ano) VALUES (%s, %s, %s, %s, %s, %s, %s, %s)",
  41.                       GetSQLValueString($_POST['Usuario'], "text"),
  42.                       GetSQLValueString($_POST['Nombre'], "text"),
  43.                       GetSQLValueString($_POST['Apellidos'], "text"),
  44.                       GetSQLValueString($_POST['Contrasena'], "text"),
  45.                       GetSQLValueString($_POST['tipo'], "text"),
  46.                       GetSQLValueString($_POST['dia'], "text"),
  47.                       GetSQLValueString($_POST['mes'], "text"),
  48.                       GetSQLValueString($_POST['ano'], "text"));
  49.  
  50.  mysql_select_db($database_freespace, $freespace);
  51.  $Result1 = mysql_query($insertSQL, $freespace) or die(mysql_error());
  52.  
  53.  $insertGoTo = "index.php";
  54.  if (isset($_SERVER['QUERY_STRING'])) {
  55.    $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
  56.    $insertGoTo .= $_SERVER['QUERY_STRING'];
  57.  }
  58.  header(sprintf("Location: %s", $insertGoTo));
  59. }
  60. ?>
Código
  1. <!DOCTYPE html>
  2. <html lang="en" class="no-js">
  3.  
  4.    <head>
  5.  
  6.        <meta charset="utf-8">
  7.        <title>Registrate Es Gratis!!</title>
  8.        <meta name="viewport" content="width=device-width, initial-scale=1.0">
  9.        <meta name="description" content="">
  10.        <meta name="author" content="">
  11.  
  12.        <!-- CSS -->
  13.        <link rel='stylesheet' href='http://fonts.googleapis.com/css?family=PT+Sans:400,700'>
  14.        <link rel="stylesheet" href="assets/css/reset.css">
  15.        <link rel="stylesheet" href="assets/css/supersized.css">
  16.        <link rel="stylesheet" href="assets/css/style.css">
  17.  
  18.        <!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
  19.        <!--[if lt IE 9]>
  20.            <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
  21.        <![endif]-->
  22.  
  23.    <!-- Copyright 2001, 2002, 2003 Macromedia, Inc. All rights reserved. -->
  24.    </head>
  25.  
  26.    <body bgcolor="#FFFFFF" text="#000000">
  27.  
  28.        <!-- MENU-LOCATION=NONE -->
  29. <div class="page-container">
  30.  <h1>Registrate!</h1>
  31.          <h3>Preparate a entrar al mundo de FreeSpace</h3>
  32.            <form name="form" action="<?php echo $editFormAction; ?>" method="POST">
  33.                <input type="text" name="Nombre" class="nombre" placeholder="Nombre">
  34.                <input type="text" name="Apellidos" class="apellidos" placeholder="Apellidos">
  35.                <input type="text" name="Usuario" class="username" placeholder="Usuario">
  36.                <input type="text" name="E-mail" class="username" placeholder="E-mail">
  37.                <input type="password" name="Contrasena" class="password" placeholder="Contraseña">
  38.                &nbsp;&nbsp;&nbsp;
  39.                &nbsp;&nbsp;&nbsp;
  40.                &nbsp;&nbsp;&nbsp;
  41.                <p><select name="tipo">
  42.                  <option>Sexo</option>
  43.                  <option>Hombre</option>
  44.                  <option>Mujer</option>
  45.                </select></p>
  46.                &nbsp;&nbsp;&nbsp;
  47.                &nbsp;&nbsp;&nbsp;
  48.                <h2>Fecha de nacimiento</h2>
  49.                &nbsp;&nbsp;&nbsp;
  50.                <p><select name="dia">
  51.                  <option>Dia</option>
  52.                  <option>1</option>
  53.            <option>2</option>
  54.            <option>3</option>
  55.            <option>4</option>
  56.            <option>5</option>
  57.            <option>6</option>
  58.            <option>7</option>
  59.            <option>8</option>
  60.            <option>9</option>
  61.            <option>10</option>
  62.            <option>11</option>
  63.            <option>12</option>
  64.            <option>13</option>
  65.            <option>14</option>
  66.            <option>15</option>
  67.            <option>16</option>
  68.            <option>17</option>
  69.            <option>18</option>
  70.            <option>19</option>
  71.            <option>20</option>
  72.            <option>21</option>
  73.            <option>22</option>
  74.            <option>23</option>
  75.            <option>24</option>
  76.            <option>25</option>
  77.            <option>26</option>
  78.            <option>27</option>
  79.            <option>28</option>
  80.            <option>29</option>
  81.            <option>30</option>
  82.            <option>31</option>
  83.                </select>
  84.                 <select name="mes">
  85.                   <option>Mes</option>
  86.                   <option>Enero</option>
  87.            <option>Febrero</option>
  88.            <option>Marzo</option>
  89.            <option>Abril</option>
  90.            <option>Mayo</option>
  91.            <option>Junio</option>
  92.            <option>Julio</option>
  93.            <option>Agosto</option>
  94.            <option>Septiembre</option>
  95.            <option>Octubre</option>
  96.            <option>Noviembre</option>
  97.            <option>Diciembre</option>
  98.                 </select>
  99.                 <select name="ano">
  100.                   <option>Año</option>
  101.                   <option value="1960"> 1960</option>
  102.          <option value="1961"> 1961</option>
  103.          <option value="1962"> 1962</option>
  104.          <option value="1963"> 1963</option>
  105.          <option value="1964"> 1964</option>
  106.          <option value="1965"> 1965</option>
  107.          <option value="1966"> 1966</option>
  108.          <option value="1967"> 1967</option>
  109.          <option value="1968"> 1968</option>
  110.          <option value="1969"> 1969</option>
  111.          <option value="1970"> 1970</option>
  112.          <option value="1971"> 1971</option>
  113.          <option value="1972"> 1972</option>
  114.          <option value="1973"> 1973</option>
  115.          <option value="1974"> 1974</option>
  116.          <option value="1975"> 1975</option>
  117.          <option value="1976"> 1976</option>
  118.          <option value="1977"> 1977</option>
  119.          <option value="1978"> 1978</option>
  120.          <option value="1979"> 1979</option>
  121.          <option value="1980"> 1980</option>
  122.          <option value="1981"> 1981</option>
  123.          <option value="1982"> 1982</option>
  124.          <option value="1983"> 1983</option>
  125.          <option value="1984"> 1984</option>
  126.          <option value="1985"> 1985</option>
  127.          <option value="1986"> 1986</option>
  128.          <option value="1987"> 1987</option>
  129.          <option value="1988"> 1988</option>
  130.          <option value="1989"> 1989</option>
  131.          <option value="1990"> 1990</option>
  132.          <option value="1991"> 1991</option>
  133.          <option value="1992"> 1992</option>
  134.          <option value="1993"> 1993</option>
  135.          <option value="1994"> 1994</option>
  136.          <option value="1995"> 1995</option>
  137.          <option value="1996"> 1996</option>
  138.          <option value="1997"> 1997</option>
  139.          <option value="1998"> 1998</option>
  140.          <option value="1999"> 1999</option>
  141.          <option value="2000"> 2000</option>
  142.          <option value="2001"> 2001</option>
  143.          <option value="2002"> 2002</option>
  144.          <option value="2003"> 2003</option>
  145.          <option value="2004"> 2004</option>
  146.          <option value="2005"> 2005</option>
  147.          <option value="2006"> 2006</option>
  148.          <option value="2007"> 2007</option>
  149.          <option value="2008"> 2008</option>
  150.          <option value="2009"> 2009</option>
  151.          <option value="2010"> 2010</option>
  152.          <option value="2011"> 2011</option>
  153.          <option value="2012"> 2012</option>
  154.          <option value="2013"> 2013</option>
  155.          <option value="2014"> 2014</option>
  156.          <option value="2015"> 2015</option>
  157.                 </select></p>
  158.              <button type="submit">Terminado!</button>
  159.                <div class="error"><span>+</span></div>
  160.                <input type="hidden" name="MM_insert" value="form">
  161.            </form>
  162.            <div class="connect">                
  163.            </div>
  164.        </div>
  165.  
  166.        <!-- javascript -->
  167.        <script src="assets/js/jquery-1.8.2.min.js"></script>
  168.        <script src="assets/js/supersized.3.2.7.min.js"></script>
  169.        <script src="assets/js/supersized-init.js"></script>
  170.        <script src="assets/js/scripts.js"></script>
  171.  
  172.    </body>
  173.  
  174. </html>

Mod: Obligatorio el uso de etiquetas GeSHi. Temas sobre PHP van al subforo de PHP. No escribir los títulos en mayúsculas (se considera gritar).


« Última modificación: 6 Diciembre 2015, 20:56 pm por #!drvy » En línea

gAb1


Desconectado Desconectado

Mensajes: 731


Ver Perfil
Re: Impedir que se duplique informacion en mi base de datos sql
« Respuesta #1 en: 6 Diciembre 2015, 22:01 pm »

Es muy sencillo, primero tienes que comprobar si el nombre existe y devolver un mensaje de error. Para ello tienes que hacer un select a la tabla y buscar el nombre que ha introducido el usuario, si existe mandas un mensaje si no existe continua con el registro.
Siento no poner ningún ejemplo, estoy en el movil.


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines