🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: chile.comp.programacion
Article #2256

Re: Otra consulta PHP

#2256
From: RaCo
Date: Fri, 10 Feb 2006 11:52
168 lines
6483 bytes
Amigo, tal como te dice otra persona por ah�, en Bases de Datos, cuando 
tienes un dato que no se puede repetir, es necesario que lo pongas como 
Llave �nica.

Me explico, en ocasiones, cuando tienes una Tabla Automovil, �sta 
deber�a tener un atributo Patente. Obviamente dos autos no pueden tener 
la Misma patente. �sto es lo que los Inform�ticos denominamos Integridad 
de una Base de datos, espec�ficamente de Dominio, donde una llave no 
puede contener valores nulos ni repetidos.

Por qu� te doy esta lata? b�sicamente porque lo que tu preguntas no 
deber�a ser abordado con PHP (o el lenguaje de programaci�n que uses 
para tu sistema), �so es parte netamente de la Base de datos, si "Carda" 
es un elemento un�voco de una Entidad en tu base de datos, pues debes 
decirle a la Base de datos que "Carda" es �nica e irrepetible, y es el 
Sistema Gestor de Base de datos (MySQL, Oracle o qu� se yo qu� motor 
usas) quien debe impedir que el dato repetido se ingrese.

Si tu modelo de datos actual te permite ingresar ese dato repetido 
entonces tu modelo tiene series fallas de seguridad e integridad. 
Imaginate qu� pasar�a si alguien se mete a tu base de datos por otro 
medio que no sea por tu p�gina en PHP e ingrese varios datos "Carda" 
repetidos, pues si tu BD lo permite, el error no se captar�, y as� 
sucesivamente.

Te recomiendo que le eches un ojo a internet y leas algunos libros o 
cursos cortos de Modelamiento de datos y Bases de datos.


Wegh wrote:
> Amigos, quiero pedirles nuevamente a los entendidos en PHP, necesito evitar
> que se ingresen 2 "Carda" con el mismo nombre, como lo puedo hacer.
> Les mando el c�digo donde pido los datos de la "Carda" para ser ingresados a
> la Base de datos.
> 
> De antemano muchas gracias por la ayuda y la paciencia.
> 
> 
> 
> <html>
> <head>
> 
> <script type="text/javascript">
> function validate()
> {
> x=document.ingreso_carda
> nombre_carda=x.nombre_carda.value
> ano_carda=x.ano_carda.value
> marca_carda=x.marca_carda.value
> ancho_carda=x.ancho_carda.value
> origen_carda=x.origen_carda.value
> submitOK="True"
> 
> if (nombre_carda=="")
>  {
>  alert("Por favor ingrese nombre de carda")
>  submitOK="False"
>  }
> else
>  if (ano_carda=="")
>  {
>  alert("Por favor ingrese A�o de validaci�n")
>  submitOK="False"
>  }
> 
>  else
>   if (marca_carda=="")
>  {
>  alert("Por favor ingrese Marca de la carda")
>  submitOK="False"
>  }
> 
>  else
>   if (ancho_carda=="")
>  {
>  alert("Por favor ingrese ancho de carda")
>  submitOK="False"
>  }
> 
>  else
>   if (origen_carda=="")
>  {
>  alert("Por favor ingrese origen de la carda")
>  submitOK="False"
>  }
> 
>  if (submitOK=="False")
>  {
>  return false
>  }
> }
> </script>
> 
> 
> 
> <title>Textiles Zahr S.A.</title>
> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
> </head>
> 
> <body text="#0000A0" link="#0000A0"
> vlink="#0000A0" alink="#0000A0">
> <p align="center"><b><font face="Garamond" size="3">INGRESO
> CARDA</font></b></p>
> 
> 
> <form action="ingreso_carda_2.php" name="ingreso_carda" target="principal"
> id="ingreso_carda" onsubmit="return validate()" method="POST">
>   <div align="center">
>     <center>
>   <table width="602" border="0">
>     <tr>
>       <td width="276" bgcolor="#FFFFFF" bordercolor="#FFFFFF"
> bordercolorlight="#FFFFFF" bordercolordark="#FFFFFF">
>         <p align="center">
>         <font size="2" face="Garamond">Nombre:&nbsp;
>         <input name="nombre_carda" type="text" id="nombre" size="20">
>         </font></p>
>       </td>
>       <td width="310" bgcolor="#FFFFFF" bordercolor="#FFFFFF"
> bordercolorlight="#FFFFFF" bordercolordark="#FFFFFF">
>         <p align="center">
>         <font size="2" face="Garamond">A�o
> Fabricaci�n:&nbsp;&nbsp;&nbsp;&nbsp;
>         <input name="ano_carda" type="text" id="ano_carda" size="20">
>         </font></p>
>       </td>
>     </tr>
>     <tr>
>       <td bgcolor="#FFFFFF" bordercolor="#FFFFFF" bordercolorlight="#FFFFFF"
> bordercolordark="#FFFFFF" width="276">
>         <p align="center">
>         <font size="2" face="Garamond">Marca:&nbsp; &nbsp;&nbsp;&nbsp;
> <input name="marca_carda" type="text" id="rut" size="20">
>         </font></p>
>       </td>
>       <td bgcolor="#FFFFFF" bordercolor="#FFFFFF" bordercolorlight="#FFFFFF"
> bordercolordark="#FFFFFF" width="310">
>         <p align="center">
>         <font size="2" face="Garamond">Ancho de Trabajo:&nbsp;
>         <input name="ancho_carda" type="text" id="telefono" size="20">
>         </font></p>
>       </td>
>     </tr>
>     <tr>
>       <td bgcolor="#FFFFFF" bordercolor="#FFFFFF" bordercolorlight="#FFFFFF"
> bordercolordark="#FFFFFF" width="276">
>         <p align="center">
>         <font size="2" face="Garamond">Origen:&nbsp;&nbsp;&nbsp;<input
> name="origen_carda" type="text" id="direccion" size="20">
>         </font></p>
>       </td>
>       <td bgcolor="#FFFFFF" bordercolor="#FFFFFF" bordercolorlight="#FFFFFF"
> bordercolordark="#FFFFFF" width="310">
>         <p align="center">&nbsp;</p>
>       </td>
>     </tr>
>   </table>
>     </center>
>   </div>
>   <p align="center"><font size="2">
>     <input type="submit" name="Submit" value="Guardar">
>     </font></p>
>   </form>
> <p>&nbsp;</p>
> </body>
> </html>
> 
> 
Technical Details
Message-ID: <dshup9$ka0$1@news.nivel5.cl>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news4.google.com!news.glorb.com!news.kjsl.com!news.nivel5.cl!not-for-mail
References: <dsfirg$4vq$1@news.nivel5.cl>

Show Full Headers
Complete Article Headers
X-Google-Thread: 1593cb,1b87e083a8cadad4
X-Google-Attributes: gid1593cb,public
X-Google-Language: SPANISH,ASCII
Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news4.google.com!news.glorb.com!news.kjsl.com!news.nivel5.cl!not-for-mail
From: RaCo <shopper@nospamvtr.borramenet>
Newsgroups: chile.comp.programacion
Subject: Re: Otra consulta PHP
Date: Fri, 10 Feb 2006 08:52:06 -0300
Organization: Varios
Lines: 168
Message-ID: <dshup9$ka0$1@news.nivel5.cl>
References: <dsfirg$4vq$1@news.nivel5.cl>
NNTP-Posting-Host: pc-134-95-239-201.cm.vtr.net
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: news.nivel5.cl 1139572329 20800 201.239.95.134 (10 Feb 2006 11:52:09 GMT)
X-Complaints-To: news@news.nivel5.cl
NNTP-Posting-Date: Fri, 10 Feb 2006 11:52:09 +0000 (UTC)
User-Agent: Mozilla Thunderbird 1.0.7 (Windows/20050923)
X-Accept-Language: en-us, en
In-Reply-To: <dsfirg$4vq$1@news.nivel5.cl>