Ok, perfetto, allora iniziamo.
Ti dico subito che è un bel po' incasinato come codice!
Stavo iniziando a metterci mano ma, secondo me dovresti riscriverlo.
Ora inizio a darti qualche suggerimento, aggiustalo e ripostalo: se lo lasci così non te ne esci mai!
1) Quando posti il codice racchiudilo tra tag (php) codice (/php), ma anzichè usare le tonde usa le quadre (io ho usato le tonde perchè altrimenti il forum le parsa e crea il box del codice)
2) Prendi un foglio di carta e inizia a scrivere quello che vuoi fare e i vari passaggi necessari per ottenerlo
Es:
a) Il form invia i dati
b) controllo che i dati siano validi
c) Se i dati sono validi invio il form altrimenti lo mostro di nuovo con i campi precompilati con i valori immessi dall'utente
3) Inizia a scrivere il codice del punto a)
CONSIGLIO: usa un array, non usare variabili separate. Le riesci a gestire meglio. Quando valorizzi la variabile dell'array fai il controllo che ti ho postato prima. Più semplice a farsi che a dirsi
Codice PHP:
$datiForm['name'] = if (isset($_POST['nome']) && trim($_POST['nome']) != '') ? $_POST['nome'] : '' ;
// Questo lo fai per ogni valore passato dal form
CONSIGLIO: usa nomi uguali: se nel form il campo si chiama "nome" (e quindi anche in POST la chiave è "nome") allora nell'array che crei usa "nome" non "nAme" altrimenti ti incasini. Datti delle regole di scrittura: il codice è più ordinato, leggibile e lo puoi correggere più facilmente.
Per vedere se i dati sono passati correttamente fai
Codice PHP:
print_r($_POST) ;
echo '
' ;
print_r($datForm) ;
Ti vengono stampati i valori dell'array.
PS
L'errore del redirect ti viene dato perchè non hai racchiuso l'url tra apici
$url = "http://indirizzo.tld";
Inizia a correggere queste cose, poi passiamo al controllo della funzione, che pure va riscritta.