inanzitutto grazie mille per la disponibilità e per la pazienza che hai avuto con me,
certamente non sei te che ci metti tanto a capire, ma sono sicuramente io che essendo alle prime armi non mi sò spiegare molto bene...
Ho letto il link che mi hai dato e l'ho trovato molto interessante, probabolmente adotterò quella soluzione, però mentre aspettavo la tua risposta mi è venuta in mente un'idea che ho messo in pratica e devo dire che funziona abbastanza bene:
i dati sono raccolti da un piccolo form posizionato in un'altra funtion che mi richiama questa function con una action...codice:function salva(){ global $conn, $id; $titolo=$_POST['titolo']; $desc=$_POST['desc']; if($id==0) { $sql_cerca="select * from home where home_title = '".$titolo."' "; $dati_cerca=mysql_query($sql_cerca,$conn); $cerca=mysql_num_rows($dati_cerca); if($cerca <1) { $sql='insert into home(home_title, home_desc) values("'.$titolo.'","'.$desc.'")'; mysql_query($sql, $conn); $output= 'Il contenuto è stato inserito correttamente. Inserisci nuovo contenuto Torna alla lista'; } else {$output= 'Il contenuto è stato inserito correttamente. Inserisci nuovo contenuto Torna alla lista';} } else { $sql='update home set home_title="'.$titolo.'",home_desc="'.$desc.'" where port_id="'.$id.'" '; mysql_query($sql, $conn); $output= 'Il contenuto è stato aggiornato correttamente. Inserisci nuovo contenuto Torna alla lista'; } return($output); }
cosi messa la funzione mi protegge dall'inserimento di un duplicato, dato che la cosa primaria in questo caso è il titolo, quindi non avrebbe senso inserire un nuovo articolo con il solito titolo, e in più mi permette anche di fare l'update nel caso in cui la voglia modificare e mi protegge anche da un'eventuale (f5) una volta conclusa la funzione....
Cosa ne pensi di questa soluzione? è completamente da scartare o no?

Rispondi quotando