Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di Stema
    Registrato dal
    May 2008
    Messaggi
    64

    Errore in Guida php/mysql

    Sto seguendo passo passo la guida PHP/Mysql pratica per la creazione di una tabella in mysql che contenga eventuali articoli. Ho compilato la pagina save.php come descritto in questo link. E' una pagina che va a recuperare, tramite metodo POST, i dati inseriti in un form e li va ad immettere nel database. Compilando il form e cliccando su INVIA, dovrei visualizzare la pagina save.php che mi dice che l'inserimento dell'articolo nel database è avvenuto correttamente. Ed invece mi appare questo:

    codice:
    ", ">", $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); $db = mysql_connect($db_host, $db_user, $db_password); if ($db == FALSE) die ("Errore nella connessione. Verificare i parametri nel file config.inc.php"); mysql_select_db($db_name, $db) or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php"); $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"; //endif; mysql_close($db); endif; // chiude la verifica della presenza dei dati foot(); ?>
    Evidentemente c'è un errore nella riga che contiene questo codice:

    Codice PHP:
    $titolo str_replace(">""&gt;"$titolo); 
    ma non so proprio risolvere. L'articolo non mi viene inserito nel database e tutto il processo si ferma. Qualcuno può aiutarmi, per favore?
    Stema

  2. #2
    Utente di HTML.it L'avatar di Stema
    Registrato dal
    May 2008
    Messaggi
    64
    Allora, la pagina che mi permette di inserire l'articolo è la insert.php ed è così composta:

    Codice PHP:
    <? 
    include ("config.inc.php"); 
    include (
    "top_foot.inc.php");  
    //intestazione top(); 
    ?>  

    <form method="post" action="save.php"> 
    Titolo:
     <input type="text" size="40" name="titolo" /> 

     
    Data:
      
    <select name="giorno"> <?php for ($i=1$i<=31$i++)   echo "<option value=\"$i\">$i</option>"?> </select>  
    <select name="mese"> 
    <option value="1">Gennaio</option> 
    <option value="2">Febbraio</option> 
    <option value="3">Marzo</option> 
    <option value="4">Aprile</option> 
    <option value="5">Maggio</option> 
    <option value="6">Giugno</option> 
    <option value="7">Luglio</option> 
    <option value="8">Agosto</option> 
    <option value="9">Settembre</option> 
    <option value="10">Ottobre</option> 
    <option value="11">Novembre</option> 
    <option value="12">Dicembre</option> 
    </select>  

    <select name="anno"> 
    <option value="2006">2006</option> 
    <option value="2007">2007</option> 
    <option value="2008">2008</option> 
    <option value="2009">2009</option> 
    <option value="2010">2010</option> 
    <option value="2011">2011</option> 
    <option value="2012">2012</option> 
    </select> 

      

    Autore:
     <input type="text" size="40" name="autore" /> 

     
    E-mail:
     <input type="text" size="40" name="mail" /> 

     
    Testo:
     <textarea cols="60" rows="40" name="testo"></textarea>
     
     Password:
     <input type="password" size="40" name="pass" /> 

     

    <input type="submit" value="Invia2" /> 
    </form> 

    <? // chiusura pagina foot(); ?>
    E la pagina save.php è così scritta:

    Codice PHP:
    <? 
    $titolo
    =$_REQUEST['titolo']; 
    $autore=$_REQUEST['autore']; 
    $mail=$_REQUEST['mail']; 
    $testo=$_REQUEST['testo']; 
    $pass=$_REQUEST['pass']; 
    $giorno=$_REQUEST['giorno']; 
    $mese=$_REQUEST['mese']; 
    $anno=$_REQUEST['anno']; 

    include(
    "top_foot.inc.php"); 
    include(
    "config.inc.php"); 
    top();  

    if (
    $pass != $password): echo "Password errata"
    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("<""&lt;"$titolo);   
    $titolo str_replace(">""&gt;"$titolo);      
    $autore str_replace("<""&lt;"$autore);   
    $autore str_replace(">""&gt;"$autore);   
    $testo str_replace("<""&lt;"$testo);   
    $testo str_replace(">""&gt;"$testo);   
    $testo nl2br($testo);   
    $data mktime("0""0""0"$mese$giorno$anno);   

    $db mysql_connect($db_host$db_user$db_password);   
    if (
    $db == FALSE)     die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");    

    mysql_select_db($db_name$db)     or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");     

    $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";  
    //endif;     
    mysql_close($db); endif; // chiude la verifica della presenza dei dati foot(); 
    ?>
    Con IE apro la pagina insert.php, la compilo in tutti i suoi campi e premo su "INVIA". Mi compare la pagina save.php con questa scritta:

    ", ">", $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); $db = mysql_connect($db_host, $db_user, $db_password); if ($db == FALSE) die ("Errore nella connessione. Verificare i parametri nel file config.inc.php"); mysql_select_db($db_name, $db) or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php"); $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"; //endif; mysql_close($db); endif; // chiude la verifica della presenza dei dati foot(); ?>


    Aiutatemi, per favore!
    Stema

  3. #3
    Utente di HTML.it L'avatar di Stema
    Registrato dal
    May 2008
    Messaggi
    64

    Non riesco a risolvere!! Aiuto!!!!
    Stema

  4. #4
    Originariamente inviato da Stema

    Non riesco a risolvere!! Aiuto!!!!
    hai provato a mettere TUTTI i tag php estesi?

    <?php e non <?

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Utente di HTML.it L'avatar di Stema
    Registrato dal
    May 2008
    Messaggi
    64
    Ho risolto. Il problema era proprio questo:

    - se utilizzo il tag
    Codice PHP:
    <?php    ?>
    mi si inceppa nel momento in cui richiamo le funzioni top() e foot()

    - se utilizzo il tag
    Codice PHP:
    <?   ?>
    lo script non gira proprio.

    Ho dovuto, quindi, mescolare le due cose e utilizzare
    Codice PHP:
    <?php   ?>
    per il normale corso dello script e
    Codice PHP:
    <?   ?>
    dove è presente il richiamo alle funzioni.

    Grazie, piero.mac, per l'aiuto.
    Stema

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.