credo di aver capito il problema, ma non so come risolverlo, data la non perfetta conoscenza che ho.
L'intera pagina del codice php dove c'è l'errore è questa (si può ovviare mettendo l'istruzione header prima?? il codice poi funziona?? o forse è meglio che trovo un'altro script?):
<?php
include("header.php");
include("config.inc.php");
$file = $_SERVER['PHP_SELF'];
echo"
<center><table border=1 bgcolor=$sfondo1 cellspacing=0 cellpadding=0 bordercolor=$bordo1 width=600>
<td>
<table border=1 cellspacing=0 cellpadding=2 bgcolor=$sfondo2 bordercolor=$bordo2 width=600>
<td width=550><font face=verdana size=2>Pannello amministrazione</td>
</table></td></table>";
function login() {
include("config.inc.php");
global $file;
echo"
<table border=1 bgcolor=$sfondo1 cellspacing=0 cellpadding=2 bordercolor=$bordo1 width=150>
<td><form action=$file method=post>
<table border=0 cellspacing=0 cellpadding=0 bgcolor=$sfondo2 bordercolor=$bordo2 width=150>
<td><font size=1 face=verdana>User:</td>
<td><input type=text name=user class=input size=15></td>
<tr>
<td><font size=1 face=verdana>Pasword:
</td>
<td><input type=password name=pwd class=input size=15>
<input type=submit name=submit1 class=bottone value=Login></td>
</table></td></table></form>";
}
if(isset($_POST['submit1'])) {
$db = mysql_connect($db_host, $db_user, $db_password) or die('Errore connessione database');
mysql_select_db($db_name, $db) or die('Errore selezione database');
if(($_POST['user']) && ($_POST['pwd'])) {
$query = "SELECT admin_ID FROM admin_newsletter WHERE user = '$_POST[user]' AND password = '$_POST[pwd]'";
$risultato = mysql_query($query);
$num = mysql_num_rows($risultato);
if($num>0) {
Header("Location: $file?funzione=amministrazione");
} else {
echo"<script>alert('User o password sbagliati.');</script>";
}
}
}
function amministrazione() {
include("config.inc.php");
global $file;
$db = mysql_connect($db_host, $db_user, $db_password) or die('Errore connessione database');
mysql_select_db($db_name, $db) or die('Errore selezione database');
$query = "SELECT mail FROM membri_newsletter ORDER BY membro_ID DESC";
$ris = mysql_query($query);
echo"
<form name=andrea>
<table border=1 bgcolor=$sfondo1 cellspacing=0 cellpadding=0 bordercolor=$bordo1 width=600>
<td>
<table border=1 cellspacing=0 cellpadding=2 bgcolor=$sfondo2 bordercolor=$bordo2 width=600>
<td align=middle>Cambia user e pass.</td>
<td align=middle>Crea/Invia una newsletter</td>
<td align=middle><font size=1 face=verdana>Invia a: <select name=lista onChange = \"self.location = document.andrea.lista[document.andrea.lista.selectedIndex].value;\">\n
><option selected> ------ </option>"; while($array = mysql_fetch_array($ris)) {
echo"<option value=admin.php?funzione=crea_newsletter&indirizzo =$array[mail]>$array[mail]</option>";
}
echo"</select></td></table></td></table></form>";
}
function cambia_pwd() {
include("config.inc.php");
global $file;
amministrazione();
echo"
<font size=2 face=verdana>Inserisci il nuovo username e la nuova password.</font>
<form action=$file method=post>
<table border=1 bgcolor=$sfondo1 cellspacing=0 cellpadding=2 bordercolor=$bordo1 width=150>
<td>
<table border=0 cellspacing=0 cellpadding=1 bgcolor=$sfondo2 bordercolor=$bordo2 width=150>
<td><font size=1 face=verdana>User:</td>
<td><input type=text name=user2 class=input size=15></td>
<tr>
<td><font size=1 face=verdana>Pasword:
</td>
<td><input type=password name=pwd2 class=input size=15>
<input type=submit name=submit2 class=bottone value=Cambia></td>
</table></td></table></form>";
}
if(isset($_POST['submit2'])) {
$db = mysql_connect($db_host, $db_user, $db_password) or die('Errore connessione database');
mysql_select_db($db_name, $db) or die('Errore selezione database');
$query = "UPDATE admin_newsletter SET user = '$_POST[user2]', password = '$_POST[pwd2]' WHERE admin_ID = '1'";
$ris = mysql_query($query);
if($ris) {
echo"<font size=2 face=verdana>
I dati sono stati aggiornati in: User: $_POST[user2] - Password: $_POST[pwd2]
Rifai il login.</font>";
} else {
echo"Errore durante il cambiamento dei dati!";
}
}
function crea_newsletter() {
include("config.inc.php");
global $file;
amministrazione();
$query = "SELECT * FROM indirizzi";
$risultato = mysql_query($query);
if($_GET['indirizzo'] != "") {
$query3 = "SELECT indirizzi_ID FROM indirizzi WHERE indirizzi = '$_GET[indirizzo]'";
$risultato3 = mysql_query($query3);
$num = mysql_num_rows($risultato3);
if($num != 0) {
echo"<script>alert('L\'indirizzo è già stato selezionato!')</script>";
} else {
$query2 = "INSERT INTO indirizzi(indirizzi_ID, indirizzi) VALUES(null, '$_GET[indirizzo]')";
$risultato2 = mysql_query($query2);
Header("Location: $file?funzione=crea_newsletter");
}
}
if($_GET['cancella'] != "") {
$query = "DELETE FROM indirizzi WHERE indirizzi = '$_GET[cancella]'";
$risultato = mysql_query($query);
Header("Location: $file?funzione=crea_newsletter");
}
echo"
<center>
<table border=1 bgcolor=$sfondo1 cellspacing=0 cellpadding=2 bordercolor=$bordo1 width=600>
<td><form action=$file?funzione=crea_newsletter method=post>
<table border=0 cellspacing=0 cellpadding=1 bgcolor=$sfondo2 bordercolor=$bordo2 width=600>
<td><font size=1 face=verdana>Oggetto:</td>
<td><input type=text name=oggetto class=input size=99></td>
<tr>
<td valign=top><font size=1 face=verdana>Messaggio:
</td>
<td><textarea name=messaggio class=input cols=99 rows=20></textarea>
<input type=submit name=submit3 class=bottone value=Invia></td>
<tr>
<td></td>
<td><font size=1 face=verdana>Opzioni per l'invio
<input type=checkbox name=tutti>Invia a tutti.
*Invia a: "; while($array = mysql_fetch_array($risultato)) { echo"<a href=admin.php?funzione=crea_newsletter&cancella=$ array[1]>$array[1]</a> - "; } echo"
* Se vuoi inviare la newsletter a tutti gli iscritti
seleziona l'opzione \"Invia a tutti\", altrimenti tramite il menu a tendina in alto scegli i destinatari e lascia deselezionata l'opzione \"Invia a tutti\".</td>
</table></td></table></form>";
if($_POST['submit3'] && $_POST['messaggio'] && $_POST['oggetto']) {
if($_POST['tutti']) {
$query = "SELECT * FROM membri_newsletter";
$risultato = mysql_query($query);
$query2 = "SELECT membro_ID FROM membri_newsletter";
$risultato2 = mysql_query($query2);
$num = mysql_num_rows($risultato2);
$messaggio_formattato = $_POST['messaggio'];
$mess = <<<EOMESS
$messaggio_formattato
EOMESS;
for($i=0;$i<$num;$i++) {
$mail = mysql_result($risultato, $i, 'mail');
$invio = mail("$mail", "$_POST[oggetto]", "$mess", "From: $mail_admin");
}
if($invio) {
echo"<script>alert('Newsletter inviata con successo');</script>";
}
} else {
$query = "SELECT * FROM indirizzi";
$risultato = mysql_query($query);
$query2 = "SELECT indirizzi_ID FROM indirizzi";
$risultato2 = mysql_query($query2);
$num = mysql_num_rows($risultato2);
$messaggio_formattato = $_POST['messaggio'];
$mess = <<<EOMESS
$messaggio_formattato
EOMESS;
for($i=0;$i<$num;$i++) {
$mail = mysql_result($risultato, $i, 'indirizzi');
$invio = mail("$mail", "$_POST[oggetto]", "$mess", "From: $mail_admin");
}
if($invio) {
echo"<script>alert('Newsletter inviata con successo');</script>";
$query = "TRUNCATE TABLE indirizzi";
$risultato = mysql_query($query);
}
}
}
}
switch($_GET['funzione']) {
case amministrazione:
amministrazione();
break;
case cambia_pwd:
cambia_pwd();
break;
case crea_newsletter:
crea_newsletter();
break;
default:
login();
}
include("footer.html");
?>