Ragazzi ho un problema che non so come risolvere, allora ho una pagina che mi recupera dei dati a seconda di cosa fa l'utente, il problema e che per ogni azione la pagina deve reindirizzare l'utente ad un altra pagina con la funzione haders, solo che mi restituisce sempre questo errore:
Warning: Cannot modify header information - headers already sent by
So che non deve essere messo prima di nessun echo e senza spazi vuoi ma nel mio caso come faccio?
Codice PHP:
switch ($action) {
case 'Iscriviti':
$email = (isset($_POST['email'])) ? $_POST['email'] : '';
$query = 'select user_id from ml_users';
$result = mysql_query($query, $db) or die (mysql_error($db));
if(mysql_num_rows($result) > 0) {
$row = mysql_fetch_assoc($result);
$user_id = $row['user_id'];
} else {
$query = 'insert into ml_users (email, user_id) values ("' . mysql_real_escape_string($email, $db) . '")';
mysql_query($query, $db);
$user_id = mysql_insert_id($db);
}
mysql_free_result($result);
$query = 'insert into ml_subscriptions
(user_id, pending)
values
(' . $user_id . ', TRUE) ';
mysql_query($query, $db);
$message = 'Salve,' . "\n" .
$message .='Conferma questo indirizzo di e-mail per essere inserito nella nostra newsletter, basta
cliccare il link qui sotto:' . "\n\n";
$message .= 'ml_user_transact.php?user_id=' .
$user_id .'&action=confirm' . "\n\n\n";
$message .='Se invece questa e-mail ti giunge in errore ignorala'. "\n\n\n";
$mail = new SimpleMail();
$mail->setToAddress($email);
$mail->setFromAddress('');
$mail->setSubject('Conferma Iscrizione Newsletter');
$mail->setTextBody($message);
$mail->send();
unset($email);
header('Location: ml_thanks.php');
break;
}