ciao alcio,
nn ho avuto molto tempo da dedicare a questa rubrica. mi ci sono rimesso da poco...
ho cercato di seguire il tuo consiglio per evitare duplicati modificado il dabatase sql con la chiave unica... come al solito ho qualche problema nell'integrazione di quanto mi hai detto ...
ti posto come ho modificato il database :
codice:
CREATE TABLE contatti (
id INT (8) NOT NULL AUTO_INCREMENT,
`rag_sociale` varchar(128) NOT NULL,
`tipologia` varchar(128) NOT NULL,
`nome` varchar(128) NOT NULL,
`cognome` varchar(128) NOT NULL,
`citta` varchar(128) NOT NULL,
`indirizzo` varchar(128) NOT NULL,
`cap` varchar(128) NOT NULL,
`tel_fisso` varchar(128) NOT NULL,
`tel_fax` varchar(128) NOT NULL,
`tel_mob` varchar(128) NOT NULL,
`email` varchar(128) NOT NULL,
`sito` varchar(128) NOT NULL,
`note` varchar(128) NOT NULL,
PRIMARY KEY (id),
UNIQUE (rag_sociale)
)
e come ho modificato la pagina di inserimento
codice:
<?php
if($_POST) {
inserisci_record();
}
else {
mostra_form();
}
function inserisci_record()
{
// richiamo il file di configurazione
require 'config.php';
// richiamo lo script responsabile della connessione a MySQL
require 'connect.php';
// recupero i campi di tipo "stringa"
$rag_sociale = trim($_POST['rag_sociale']);
$tipologia = trim($_POST['tipologia']);
$nome = trim($_POST['nome']);
$cognome = trim($_POST['cognome']);
$indirizzo = trim($_POST['indirizzo']);
$citta = trim($_POST['citta']);
$cap = trim($_POST['cap']);
$tel_fisso = trim($_POST['tel_fisso']);
$tel_fax = trim($_POST['tel_fax']);
$tel_mob = trim($_POST['tel_mob']);
$email = trim($_POST['email']);
$sito = trim($_POST['sito']);
$note = trim($_POST['note']);
// verifico se devo eliminare gli slash inseriti automaticamente da PHP
if(get_magic_quotes_gpc())
{
$rag_sociale = stripslashes($rag_sociale);
$tipologia = stripslashes($tipologia);
$nome = stripslashes($nome);
$cognome = stripslashes($cognome);
$indirizzo = stripslashes($indirizzo);
$citta = stripslashes($citta);
$cap = stripslashes($cap);
$tel_fisso = stripslashes($tel_fisso);
$tel_fax = stripslashes($tel_fax);
$tel_mob = stripslashes($tel_mob);
$email = stripslashes($email);
$sito = stripslashes($sito);
$note = stripslashes($note);
}
$rag_sociale = mysql_real_escape_string($rag_sociale);
$tipologia = mysql_real_escape_string($tipologia);
$nome = mysql_real_escape_string($nome);
$cognome = mysql_real_escape_string($cognome);
$indirizzo = mysql_real_escape_string($indirizzo);
$citta = mysql_real_escape_string($citta);
$cap = mysql_real_escape_string($cap);
$tel_fisso = mysql_real_escape_string($tel_fisso);
$tel_fax = mysql_real_escape_string($tel_fax);
$tel_mob = mysql_real_escape_string($tel_mob);
$email = mysql_real_escape_string($email);
$sito = mysql_real_escape_string($sito);
$note = mysql_real_escape_string($note);
// preparo la query di inserimento
$insert = mysql_query ("INSERT INTO contatti (rag_sociale,tipologia,nome,cognome,indirizzo,citta,cap,tel_fisso,tel_fax,tel_mob,email,sito,note
VALUES ('$rag_sociale','$tipologia','$nome','$cognome','$indirizzo','$citta','$cap','$tel_fisso','$tel_fax','$tel_mob','$email','$sito','$note')");
echo mysql_errno(). " $errore ";
}
function mostra_record()
{
// recupero l'id autoincrement generato da MySQL per il nuovorecord inserito
$rag_sociale = trim($_POST['rag_sociale']);
// chiudo la connessione a MySQL
mysql_close();
$messaggio = urlencode("Inserimento di $rag_sociale effettuato con successo !");
header('location: '.$_SERVER['PHP_SELF'].'?msg='.$messaggio);
$errore = urlencode("ATTENZIONE : Il contatto $rag_sociale risulta gia' presente !");
header('location: '.$_SERVER['PHP_SELF'].'?errore='.$errore);
}
function mostra_form()
{
// mostro un eventuale messaggio
if(isset($_GET['errore']))
echo '<table align=\"center\" border=\"0\"><tr><td colspan=\"2\" bgcolor=\"#FFBD2B\"><div align=\"center\"><font color =\"red\">
'.htmlentities($_GET['errore']).'</div></td></tr></table>
';
// mostro un eventuale messaggio
if(isset($_GET['msg']))
echo '<table align="center" border="0"><tr><td colspan="2" bgcolor="#FFBD2B"><div align="center">'.htmlentities($_GET['msg']).'</div></td></tr></table>
';
?>
<style type="text/css">
<!--
.Stile1 {color: #1A7CAB}
body {
background: #1A7CAB;
}
a:link {
color: #FFBD2B;
}
a:visited {
color: #FFBD2B;
}
a:hover {
color: #FFBD2B;
}
a:active {
color: #FFBD2B;
}
-->
</style>
<div align="center">[img]images/nuovo_contatto.jpg[/img]</div>
<form name="form_registrazione" method="post" action="">
<div align="center">
<table width="474" border="0">
<tr>
<td colspan="2" bgcolor="#FFBD2B"></td>
</tr>
<tr>
<td width="230"><div align="right" class="Stile2">Ragione Sociale :</div></td>
<td width="228">
<input name="rag_sociale" type="text" id="rag_sociale" value="" size="38">
</td>
</tr>
<tr>
<td><div align="right" class="Stile2">Tipologia Contatto :</div></td>
<td><input name="tipologia" type="text" id="tipologia" value="" size="38"></td>
</tr>
<tr>
<td><div align="right" class="Stile2">Nome :</div></td>
<td><input name="nome" type="text" id="nome" value="" size="38"></td>
</tr>
<tr>
<td><div align="right" class="Stile2">Cognome :</div></td>
<td><input name="cognome" type="text" id="cognome" value="" size="38"></td>
</tr>
<tr>
<td><div align="right" class="Stile2">Indirizzo :</div></td>
<td><input name="indirizzo" type="text" id="indirizzo" value="" size="38"></td>
</tr>
<tr>
<td><div align="right" class="Stile2">Citta :</div></td>
<td><input name="citta" type="text" id="citta" value="" size="38"></td>
</tr>
<tr>
<td><div align="right" class="Stile2">Cap :</div></td>
<td><input name="cap" type="text" id="cap" value="" size="38"></td>
</tr>
<tr>
<td><div align="right" class="Stile2">Telefono Fisso :</div></td>
<td><input name="tel_fisso" type="text" id="tel_fisso" value="" size="38"></td>
</tr>
<tr>
<td><div align="right" class="Stile2">Telefono Fax :</div></td>
<td><input name="tel_fax" type="text" id="tel_fax" value="" size="38"></td>
</tr>
<tr>
<td><div align="right" class="Stile2">Telefono Mobile :</div></td>
<td><input name="tel_mob" type="text" id="tel_mob" value="" size="38"></td>
</tr>
<tr>
<td><div align="right" class="Stile2">EMail :</div></td>
<td><input name="email" type="text" id="email" value="" size="38"></td>
</tr>
<tr>
<td><div align="right" class="Stile2">Sito Internet :</div></td>
<td><input name="sito" type="text" id="sito" value="" size="38"></td>
</tr>
<tr>
<td><div align="right" class="Stile2">Note / Appunti :</div></td>
<td><label>
<textarea name="note" id="note" cols="29" rows="3"></textarea>
</label></td>
</tr>
<tr>
<td colspan="2" bgcolor="#FFBD2B"></td>
</tr>
<tr>
<td><div align="center">
<input type="submit" name="Aggiungi Contatto" id="Aggiungi Contatto" value="Aggiungi Contatto">
</div></td>
<td><div align="center">
<input type="reset" name="Resetta Form" id="Resetta Form" value="Resetta Form">
</div></td>
</tr>
</table>
</div>
</form>
<?php
}
?>
mi restituisce errore 1064 che credo sia collegato a qualche problema col db ...
please help !!!!!