Mikä tässä on vikana?
if (substr_count($email,"@")<>1) {header("Location: virhe.php"); }
Eli tarkoitus on siirtyä virhe sivulle jos osoitteesta ei löydy @-merkkiä
Uudelleenohjauksessa header-rivin jälkeen kannattaa yleensä laittaa die-rivi, jotta koodin suoritus päättyisi. Muistathan myös, että ohjaus onnistuu vain silloin, kun skriptissä ei ole vielä tulostettu mitään; siksi kaikki tällaiset tarkastukset täytyy tehdä koodin alussa ennen mitään HTML-koodia.
if (substr_count($email,"@")<>1) {header("Location: virhe.php"); die(); }
Tarkoititko kenties näin?
Tällä tuo menee aina tuolle virhesivulle.
Sorry tämä on taas niitä asioita jotka pitää vääntää rautalangasta :)
Lisäys: Jäljet johtivat syltty tehtaalle eli tuo DIE() auttoi, olin kirjoittanut kaikenlisäksi muuttujan väärin KIITOS.
Aihe on jo aika vanha, joten et voi enää vastata siihen.