Salve...
Come scrivo la condizione nel mio save.php per evitare di inserire nel mio form d'inserimento files/documento con lo stesso nome nella tabella del mio database?
grazie....
Salve...
Come scrivo la condizione nel mio save.php per evitare di inserire nel mio form d'inserimento files/documento con lo stesso nome nella tabella del mio database?
grazie....
con una funzione nomefileseesistegia, che controlla se il nome del file c'è, nel qual caso giustappone un contatore
pippo.jpg => pippo_00001.jpg
pippo.jpg => pippo_00002.jpg
Allora...ho inserito una condizione if associata al campo che mi indica il percorso e il nome file del documento che inserisco nel database...cercando di imporre la condizione secondo la quale se posto un nome/percorso già presente nella $query mi rimanda il messaggio "Nome già esistente!!"
Invece mi da errore all'ultima riga del codice....?>
Con questa NON funziona....
"filetesto" è il nome nel form di inserimento e $esiste è la variabile
in Config.inc.php che mi indica (dovrebbe..credo!?) il valore postato del campo Filetesto...
In Config.inc.php ho messo ...$esiste = "['filetesto']";
/////////////////////////////////////////
if ($_POST['filetesto'] == $esiste):
echo "Nome file già esistente!!";
////////////////////////////////////////
Questa funziona...."pass" è il nome nel form di inserimento campo password e $password è la variabile in config.inc.php
////////////////////////////////////////
if ($_POST['pass'] != $password):
echo "Password errata";
/////////////////////////////////////////
Per la password dovevo solo scrivere una parola...per la variabile del campo filetesto ..il variabile contenuto del campo
E' qui che sbaglio?...oppure ...sbaglio tutto....C'è un altro modo?
Spero di non essere stato troppo ..confusionario!!! ...e in un aiuto..grazie
Nessuno può aiutarmi?
Francamente non ho capito un granchè di quanto hai scritto.
Cominciamo col dire che ci sono vari approcci: "seri" e "hobbistici".
Quelli "seri" richiedono
- introduzione di una chiave non duplicata, con relativa gestione del tentativo di post
- in alternativa la creazione di una vera e propria transazione isolata (serializzata) che scriva i dati solo dopo aver verificato che non ci siano duplicazioni
Quello "hobbistico" è
- banalmente prima di inserire un dato fai qualcosa tipo
select count(nome) as quanti from tabella where nome='quellocheinseriscel'utente' (attenzione per inciso che per mysql l'= di default NON è case sensitive, ma l'uomo "serio" verifica che l'impostazione sia settata - cosa non scontata su un server remoto ad esempio - nel qual caso l'uomo davvero serio potrebbe creare un CRC32 del nome (minuscolo) da memorizzare come intero per poi fare una duplice discriminazione con un AND. Questo per evitare di dover utilizzare funzioni quali LOWER le quali inibiscono l'utilizzo di indici - fine inciso)
E poi "if quanti>=1 then guarda che non puoi usare questo nome"
oppure "ti aggiungo_0000x al nome"