- Home
- Categorie
- Coding e Sistemistica
- PHP
- Problema Script News Php
-
L'errore sta nella pagina che salva (save.php).
Il codice è questo:
<title>Salva Articolo :: Cellulari e PC.net</title><?
include("top_foot.inc.php");
include("config.inc.php");
top();if ($pass != $password): echo "Password errata";
$titolo=$_REQUEST['titolo'];
$autore=$_REQUEST['autore'];
$mail=$_REQUEST['mail'];
$testo=$_REQUEST['testo'];
$pass=$_REQUEST['pass'];
$giorno=$_REQUEST['giorno'];
$mese=$_REQUEST['mese'];
$anno=$_REQUEST['anno'];elseif (trim($titolo) == "" OR trim($testo) == ""):
echo "I campi Titolo e Testo devono essere riempiti!";else :
$titolo = addslashes(stripslashes($titolo));
$autore = addslashes(stripslashes($autore));
$mail = addslashes(stripslashes($mail));
$testo = addslashes(stripslashes($testo));$titolo = str_replace("<", "<", $titolo);
$titolo = str_replace(">", ">", $titolo);
$autore = str_replace("<", "<", $autore);
$autore = str_replace(">", ">", $autore);
$testo = str_replace("<", "<", $testo);
$testo = str_replace(">", ">", $testo);
$testo = nl2br($testo);$data = mktime("0", "0", "0", $mese, $giorno, $anno); $query = "INSERT INTO news (titolo, testo, data, autore, mail) VALUES ('$titolo', '$testo', '$data', '$autore', '$mail')"; if (mysql_query($query, $db)) echo "L'articolo è stato inserito correttamente";
else
echo "Errore durante l'inserimento";mysql_close($db);
endif; // chiude la verifica della presenza dei dati
foot();
?>
-
@slevin said:
L'errore sta nella pagina che salva (save.php).
Il codice è questo:
<title>Salva Articolo :: Cellulari e PC.net</title><?
include("top_foot.inc.php");
include("config.inc.php");
top();if ($pass != $password): echo "Password errata";
$titolo=$_REQUEST['titolo'];
$autore=$_REQUEST['autore'];
$mail=$_REQUEST['mail'];
$testo=$_REQUEST['testo'];
$pass=$_REQUEST['pass'];
$giorno=$_REQUEST['giorno'];
$mese=$_REQUEST['mese'];
$anno=$_REQUEST['anno'];elseif (trim($titolo) == "" OR trim($testo) == ""):
echo "I campi Titolo e Testo devono essere riempiti!";else :
$titolo = addslashes(stripslashes($titolo));
$autore = addslashes(stripslashes($autore));
$mail = addslashes(stripslashes($mail));
$testo = addslashes(stripslashes($testo));$titolo = str_replace("<", "<", $titolo);
$titolo = str_replace(">", ">", $titolo);
$autore = str_replace("<", "<", $autore);
$autore = str_replace(">", ">", $autore);
$testo = str_replace("<", "<", $testo);
$testo = str_replace(">", ">", $testo);
$testo = nl2br($testo);$data = mktime("0", "0", "0", $mese, $giorno, $anno); $query = "INSERT INTO news (titolo, testo, data, autore, mail) VALUES ('$titolo', '$testo', '$data', '$autore', '$mail')"; if (mysql_query($query, $db)) echo "L'articolo è stato inserito correttamente";
else
echo "Errore durante l'inserimento";mysql_close($db);
endif; // chiude la verifica della presenza dei dati
foot();
?>
Qaule è la variabile che passi tramite form: $pass o $password ?
Ammettiamo sia $password aggiungi questa riga
$password = $_REQUEST['password'];
if ($pass != $password): echo "Password errata";Però questo non spiega come mai ti da anche titolo e testo mancanti.
Che versione di php hai? $_REQUEST è supportato dalla 4.20.P.S.: Comunque questo script non mi sembra buono
-
ora provo e se non va faccio cn wp
-
ho provato a inserire e mi dice:
Parse error: syntax error, unexpected $end in /home/mhd-01/www.cellulariepc.net/htdocs/news/save.php on line **48
Ma la linea 48 è la linea dopo il ?> finale!
**
-
manca un endif prima di foot();
almeno a prima vista...ps.
comunque io programmando uso sempre le parentesi {}
almeno per me il tutto poi risulta più leggibile...
-
l'endif c'è
-
e tu metticene un altro...
così scritto non hai chiuso un else!
Tu mettine un altro che male non ci fa...
-
[php]
Il codice è questo:
<title>Salva Articolo :: Cellulari e PC.net</title><?
include("top_foot.inc.php");
include("config.inc.php");
top();
$password = $_REQUEST['password'];
if ($pass != $password){ echo "Password errata";}
$titolo=$_REQUEST['titolo'];
$autore=$_REQUEST['autore'];
$mail=$_REQUEST['mail'];
$testo=$_REQUEST['testo'];
$pass=$_REQUEST['pass'];
$giorno=$_REQUEST['giorno'];
$mese=$_REQUEST['mese'];
$anno=$_REQUEST['anno'];elseif (trim($titolo) == "" OR trim($testo) == ""){
echo "I campi Titolo e Testo devono essere riempiti!";
}
else {
$titolo = addslashes(stripslashes($titolo));
$autore = addslashes(stripslashes($autore));
$mail = addslashes(stripslashes($mail));
$testo = addslashes(stripslashes($testo));$titolo = str_replace("<", "<", $titolo);
$titolo = str_replace(">", ">", $titolo);
$autore = str_replace("<", "<", $autore);
$autore = str_replace(">", ">", $autore);
$testo = str_replace("<", "<", $testo);
$testo = str_replace(">", ">", $testo);
$testo = nl2br($testo);$data = mktime("0", "0", "0", $mese, $giorno, $anno);
$query = "INSERT INTO news (titolo, testo, data, autore, mail) VALUES ('$titolo', '$testo', '$data', '$autore', '$mail')";
if (mysql_query($query, $db)){
echo "L'articolo è stato inserito correttamente";}
else{
echo "Errore durante l'inserimento";}mysql_close($db);
}
foot();
?>
[/php]non lo ho testato ma dovrei aver risolto
-
Parse error: syntax error, unexpected T_ELSEIF in /home/mhd-01/www.cellulariepc.net/htdocs/news/save.php on line **16
COSì DICE
**
-
@slevin said:
Parse error: syntax error, unexpected T_ELSEIF in /home/mhd-01/www.cellulariepc.net/htdocs/news/save.php on line **16
COSì DICE
**
il tuo elseif non ha un if precedente.
modificalo cosi:
[php]<title>Salva Articolo :: Cellulari e PC.net</title><?
include("top_foot.inc.php");
include("config.inc.php");
top();
$password = $_REQUEST['password'];
if ($pass == $password){
$titolo=$_REQUEST['titolo'];
$autore=$_REQUEST['autore'];
$mail=$_REQUEST['mail'];
$testo=$_REQUEST['testo'];
$pass=$_REQUEST['pass'];
$giorno=$_REQUEST['giorno'];
$mese=$_REQUEST['mese'];
$anno=$_REQUEST['anno'];if (trim($titolo) == "" OR trim($testo) == "") { echo "I campi Titolo e Testo devono essere riempiti!"; } else { $titolo = addslashes(stripslashes($titolo)); $autore = addslashes(stripslashes($autore)); $mail = addslashes(stripslashes($mail)); $testo = addslashes(stripslashes($testo)); $titolo = str_replace("<", "<", $titolo); $titolo = str_replace(">", ">", $titolo); $autore = str_replace("<", "<", $autore); $autore = str_replace(">", ">", $autore); $testo = str_replace("<", "<", $testo); $testo = str_replace(">", ">", $testo); $testo = nl2br($testo); $data = mktime("0", "0", "0", $mese, $giorno, $anno); $query = "INSERT INTO news (titolo, testo, data, autore, mail) VALUES ('$titolo', '$testo', '$data', '$autore', '$mail')"; if (mysql_query($query, $db)){ echo "L'articolo è stato inserito correttamente"; } else { echo "Errore durante l'inserimento"; } mysql_close($db); }
} else {
echo "Password errata";
}
foot();
?>[/php]
Prima regola per non commettere questi errori è : indentazione
-
ancora non va...mi dice
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/mhd-01/www.cellulariepc.net/htdocs/news/save.php on line 37
Errore durante l'inserimento
Warning: mysql_close(): supplied argument is not a valid MySQL-Link resource in /home/mhd-01/www.cellulariepc.net/htdocs/news/save.php on line 45
-
questo è un problema di database sicuro di aver settato quello giusto?
sicuro che esista la tabella news?
sicuro che esistano quei campi nella tabella?
questo è l'errore
-
la tabella esiste!
-
@slevin said:
ancora non va...mi dice
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/mhd-01/www.cellulariepc.net/htdocs/news/save.php on line 37
Errore durante l'inserimento
Warning: mysql_close(): supplied argument is not a valid MySQL-Link resource in /home/mhd-01/www.cellulariepc.net/htdocs/news/save.php on line 45Secondo me manca la connessione al database.
Dove viene assegnato a $db l'identificativo della connessione a MySql ?