🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: chile.comp.programacion
Article #2258

Re: Otra consulta PHP

#2258
From: gato2005_cl
Date: Fri, 10 Feb 2006 17:22
193 lines
7753 bytes
Esencialmente es desperdicio de recursos acceder dos veces a la tabla.
Incluye en el archivo de respuesta dek formulario la comprobacion de la 
existencia del ingreso y un retorno adecuado a el. Al retornar regresas 
a la direccion del archivo que contiene el form, marcando el elemento 
que esta repetido.
Para ser m�s visible podrias incluir una etiqueta de texto oculta que 
especificara el elemento repetido.

Wegh escribi�:
> Si amigo, si lo tengo asi, esta bien la bdd, no permite ingresar 2 valores
> iguales, pero lo que necesito es que el usuario pueda darse cuenta que sus
> datos no fueron ingresados, porque el nombre se repetia, y mandar ese error
> es lo que no me resulta.
> 
> "RaCo" <shopper@nospamvtr.borramenet> escribi� en el mensaje
> news:dshup9$ka0$1@news.nivel5.cl...
>> 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: <dsii5g$p7c$1@news.nivel5.cl>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news4.google.com!news.glorb.com!nntp-server.pubsub.com!news.nivel5.cl!not-for-mail
References: <dsfirg$4vq$1@news.nivel5.cl> <dshup9$ka0$1@news.nivel5.cl> <dsiehg$o2v$1@news.nivel5.cl>

Show Full Headers
Complete Article Headers
X-Google-Thread: 1593cb,1b87e083a8cadad4
X-Google-Attributes: gid1593cb,public
X-Google-Language: SPANISH,CP1252
Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news4.google.com!news.glorb.com!nntp-server.pubsub.com!news.nivel5.cl!not-for-mail
From: gato2005_cl <misforos.chileSINESTO@gmail.com>
Newsgroups: chile.comp.programacion
Subject: Re: Otra consulta PHP
Date: Fri, 10 Feb 2006 14:22:17 -0300
Organization: Varios
Lines: 193
Message-ID: <dsii5g$p7c$1@news.nivel5.cl>
References: <dsfirg$4vq$1@news.nivel5.cl> <dshup9$ka0$1@news.nivel5.cl> <dsiehg$o2v$1@news.nivel5.cl>
NNTP-Posting-Host: pc-178-51-86-200.cm.vtr.net
Mime-Version: 1.0
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: news.nivel5.cl 1139592177 25836 200.86.51.178 (10 Feb 2006 17:22:57 GMT)
X-Complaints-To: news@news.nivel5.cl
NNTP-Posting-Date: Fri, 10 Feb 2006 17:22:57 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows; U; Win98; es-ES; rv:1.7.10) Gecko/20050716 Thunderbird/1.0.7 Mnenhy/0.7.3.0
In-Reply-To: <dsiehg$o2v$1@news.nivel5.cl>