• ModSenior

    Si lo puoi togliere tranquillamente, visto che non ti serve a nulla.


  • User

    ok, ti ringrazio!


  • User

    però inserisce sempre doppio messaggio nel db..e vedo il titolo attaccato al messaggio anche se metto il br...come posso risolvere?


  • User

    anzi ogni volta che ricarico la pagina mi trovo altri messaggi identici, e lo stesso capita nel db!!


  • ModSenior

    Questo è normale, visto che hai unito visualizzazione e inserimento nella stessa pagina, come ti avevo già detto prima dovrebbero essere 2 cose separate.


  • User

    @Thedarkita said:

    Questo è normale, visto che hai unito visualizzazione e inserimento nella stessa pagina, come ti avevo già detto prima dovrebbero essere 2 cose separate.

    Hai ragione, scusa non avevo ben capito cosa..pensavo si riferisse solo alla stampa a video..provvedo a correggere!


  • User

    Ho creato un'altra pagina..solo che vedo errori di notice, anche se ho richiamato le varibiali...ecco il codice..
    Notice: Undefined index: title in C:\xampp\htdocs\prova\annunci.php on line 59

    Notice: Undefined index: body in C:\xampp\htdocs\prova\annunci.php on line 60

    [PHP]<?php
    //inizio la sessione utente
    session_start();
    include("varDB.inc");
    //creo una connessione al db e lo seleziono
    $conn=mysql_connect("localhost","root","");
    mysql_select_db("sito");

    ?>

    <html> <!-- striscia in alto-->

    <head>
            <link rel="stylesheet" type="text/css" href="stile.css">
            <title>Inserisci </title>
    </head>
    
    
        <body>
    
            <table>
                    <tr>
                        <td>
                            <p><font face="magneto" color="black" size="20px"><center><b><i>"LA BOTTEGA DELL'USATO"</i></b></center></p>    
                            
                        </td>         
                    </tr>
            </table>
                
    
    
    
    
        <div id="menu">
                                <ul>
    <?php
    //controllo che ci sia una sessione utente, altrimenti "sessione scaduta"
    
    if(isset($_SESSION['utente'])){
    
     echo"<li><font face='georgia' color='red'size='4px'>ciao " . $_SESSION['utente'] . "</li>";
                                        echo"<li><a href='login.php?azione=logout'>logout</a></li>";
                                        echo"<li><a href='cancellato.php'>cancella</a></li>";
                                        
                                        echo"<br>";
                                        echo"<br>";
                                    }else{
                                    
                                    $messaggio= "<font color='black' face='times new roman' size='4px'>sessione scaduta";
                                }
    ?>
       </ul>
                            </div>
    

    <?php
    $title=$_POST['title'];
    $body=$_POST['body'];
    $risultato = mysql_query("SELECT * FROM annunci_cerco WHERE title='$title' AND body='$body' ");
    //mostro tutti gli annunci inseriti
    while ($riga = mysql_fetch_array($risultato)) {
    echo" <font color='black' face='times new roman' size='4px'>";
    echo $riga['title'] ;

    echo"<br>";
    echo"<br>";
    echo"<br>";
    echo"<font color='black' face='times new roman' size='4px'>";
    echo $riga['body'];

    }
    mysql_close();
    ?>
    </body>

    </html>
    [/PHP]


  • ModSenior

    Significa che le 2 variabili POST non hanno quei 2 indici che stai utilizzando al momento dell'accesso alla pagina.


  • User

    @Thedarkita said:

    Significa che le 2 variabili POST non hanno quei 2 indici che stai utilizzando al momento dell'accesso alla pagina.

    mmm...eppure a me sembra di aver messo gli stessi indici...


  • ModSenior

    Si, ma alla pagina ci arrivi mediante il form? Altrimenti non invi nulla con il metodo post ed è normale vedere quei messaggi di avviso.


  • User

    hai ragione..non ci arrivo tramite il form, ma non saprei come altro richiamare le variabili title e body...


  • ModSenior

    Ma in questa pagina, a cosa ti servono?


  • User

    [PHP]<?php
    //inizio la sessione utente
    session_start();
    include("varDB.inc");
    //creo una connessione al db e lo seleziono
    $conn=mysql_connect("localhost","root","");
    mysql_select_db("sito");
    //inizializzo la variabile messaggio
    $messaggio="";

    ?>

    <html> <!-- striscia in alto-->

    <head>
            <link rel="stylesheet" type="text/css" href="stile.css">
            <title>Inserisci </title>
    </head>
    
    
        <body>
    
            <table>
                    <tr>
                        <td>
                            <p><font face="magneto" color="black" size="20px"><center><b><i>"LA BOTTEGA DELL'USATO"</i></b></center></p>    
                            
                        </td>         
                    </tr>
            </table>
                
    
    
    
    
        <div id="menu">
                                <ul>
    <?php
    //controllo che ci sia una sessione utente, altrimenti "sessione scaduta"
    
    if(isset($_SESSION['utente'])){
    
     echo"<li><font face='georgia' color='red'size='4px'>ciao " . $_SESSION['utente'] . "</li>";
                                        echo"<li><a href='login.php?azione=logout'>logout</a></li>";
                                        echo"<li><a href='cancellato.php'>cancella</a></li>";
                                        
                                        echo"<br>";
                                        echo"<br>";
                                    }else{
                                    
                                    $messaggio= "<font color='black' face='times new roman' size='4px'>sessione scaduta";
                                }
    ?>
       </ul>
                            </div>
    

    <?php

    $risultato = mysql_query("SELECT * FROM annunci_cerco");
    //mostro tutti gli annunci inseriti 
    

    while ($riga = mysql_fetch_array($risultato)) {
    echo" <font color='black' face='times new roman' size='4px'>";
    echo $riga['title'] ;

    echo"<br>";
    echo"<br>";
    echo"<br>";
    echo"<font color='black' face='times new roman' size='4px'>";
    echo $riga['body'];

    }
    
    
    mysql_close();
    

    ?>
    </body>

    </html>
    [/PHP]

    hai ragione, non mi servono a nulla, perchè prima nella query della select avevo messo le variabili title e body, mentre togliendo tutto funziona alla perfezione!ecco il codice corretto...

    però un'altra cosa.. come faccio ad andare a capo?perchè il br non funziona e il body e il titolo successivo sono attaccati...


  • ModSenior

    Il br devi metterlo dopo echo $riga['body']; altrimenti non ottieni ciò che vuoi.
    È fondamentale che studi un pò di html, perchè lavorando con php si da per scontato di sapere perfettamente come funziona html, altrimenti lavorare con moduli o anche un semplice andare a capo ti fà perdere moltissimo tempo, in quanto vai per tentativi.


  • User

    hai ragione..ti chiedo anche se posso mettere le stringhe in questo modo o c'è un modo per accumunarne?

    [PHP]echo $riga['title']; echo"<br> "; echo $riga['body'];
    [/PHP]


  • ModSenior

    Puoi fare cosi:
    [php]
    echo $riga['title']."<br>".$riga['body'];
    [/php]


  • User

    @Thedarkita said:

    Puoi fare cosi:
    [php]
    echo $riga['title']."<br>".$riga['body'];
    [/php]

    Grazie del tuo prezioso aiuto!!Adesso però vorrei che l'utente visualizzasse l'ultimo annuncio inseritoe poi potesse tornare agli altri..come posso fare?


  • User

    Volevo chiedere come faccio ad inserire il nome dell'autore dei messaggi nella tabella annunci?
    perchè quando inserisco gli annunci, non inserisce il username dell'autore nel db, e ogni volta che inserisco l'annuncio lo visualizzo con il nome dell'utente che ha eseguito la sessione...

    allego il codice...non so se son stata molto chiara...
    [PHP]<?php
    //inizio la sessione utente
    session_start();
    //includo i parametri del db
    Include("varDB.inc");
    //creo una connessione al db e lo seleziono
    $conn=mysql_connect("localhost","root","") or die;
    mysql_select_db("sito") or die;
    //inizializzo la variabile messaggio
    $messaggio="";
    ?>

    <html> <!-- striscia in alto-->

    <head>
            <!-- css esterno -->
            <link rel="stylesheet" type="text/css" href="stile.css">
            <title>Inserisci </title>
    </head>
    
    
        <body>
        <!-- strisci in alto -->
            <table>
                    <tr>
                        <td>
                            <p><font face="magneto" color="black" size="20px"><center><b><i>"LA BOTTEGA DELL'USATO"</i></b></center></p>    
                            
                        </td>         
                    </tr>
            </table>
                
    
    
    
    
        <div id="menu">
                                <ul>
    <?php
    //controllo che ci sia una sessione utente, altrimenti "sessione scaduta"
    
    if(isset($_SESSION['utente'])){
    
     echo"<li><font face='georgia' color='red'size='4px'>ciao " . $_SESSION['utente'] . "</li>";
                                        echo"<li><a href='login.php?azione=logout'>logout</a></li>";
                                        echo"<li><a href='cancellato.php'>cancella</a></li>";
                                        
                                        echo"<br>";
                                        echo"<br>";
                                    }else{
                                    
                                    $messaggio= "<font color='black' face='times new roman' size='4px'>sessione scaduta";
                                }
    ?>
       </ul>
                            </div>
    

    <?php
    //controllo che ci sia una sessione utente, altrimenti "sessione scaduta", mostro il form di inserimento dati
    if (isset($_SESSION['utente'])){

    ?>

    <form method="POST" action="entra.php">
    <p>Inserisci i tuoi annunci</p>

    Titolo<input type="text" name="title" value=""/><br>
    Testo<textarea name="body" cols="10" rows="10"></textarea>
    
    <input type="submit" name="invia" value="inserisci"/>
    

    </form>
    <?php

    }else{

    $messaggio="<font color='black' face='times new roman' size='4px'>sessione scaduta";

    }
    //chiudo la connessione al db
    mysql_close();
    ?>

        </body>
    

    </html>[/PHP]

    [PHP]<?php
    //inizio la sessione utente
    session_start();
    include("varDB.inc");
    //creo una connessione al db e lo seleziono
    $conn=mysql_connect("localhost","root","") or die;
    mysql_select_db("sito") or die;
    //inizializzo la variabile messaggio
    $messaggio="";

    ?>

    <html>

    <head>
    <!-- striscia in alto -->
    <title>annunci</title>
    <!--css esterno-->
    <link rel="stylesheet" type="text/css" href="stile.css">
    </head>
    <body>
    <table>
    <tr>
    <td>
    <p><font face="magneto" color="black" size="20px"><center><b><i>"LA BOTTEGA DELL'USATO"</i></b></center></p>

                        </td>         
                    </tr>
                </table>
                
    
    
    
    
        <div id="menu">
                                <ul>
    <?php
    //controllo che ci sia una sessione utente, altrimenti "sessione scaduta"
    if(isset($_SESSION['utente'])){
    
     echo"<li><font face='georgia' color='red'size='4px'>ciao " . $_SESSION['utente'] . "</li>";
                                        echo"<li><a href='login.php?azione=logout'>logout</a></li>";
                                        echo"<li><a href='cancellato.php'>cancella</a></li>";
                                        
                                        echo"<br>";
                                        echo"<br>";
                                    }else{
                                    
                                    $messaggio="<font color='black' face='times new roman' size='4px'>sessione scaduta";
                                }
    

    //richiamo i dati inseriti nel form tramite la variabile superglobale $_POST
    $username=$_SESSION['utente'];
    $title=$_POST['title'];
    $body=$_POST['body'];
    //eseguo i controlli relativi alla compilazione dati
    if($title=="" ||$body==""){
    echo "<font color='black' face='times new roman' size='4px'>Non hai riempito i campi";

        }else{
    //se è tutto ok, inserisco i dati nel db
    $inserimentoannunci=mysql_query("INSERT INTO annunci_cerco (username,title,body) VALUES ('$username','$title','$body')");
    }
    //se i dati sono inseriti mostro gli annunci inseriti
    if($inserimentoannunci){
    
    echo"inserimento riuscito";
    //header location visualizza.php //?id:articolo=ultimo
    header("refresh:2; URL=annunci.php");
    
    //se ci sono problemi stampo messaggio di errore
    }else{
    $messaggio="<font color='black' face='times new roman' size='4px'>errore";
    }
    
    
    
    //inteerrrompo la connessione con il db
    mysql_close();
    ?>
       </ul>
                            </div>
    

    </body>

    </html>

    [/PHP]

    [PHP]<?php
    //inizio la sessione utente
    session_start();
    //includo i parametri del db
    include("varDB.inc");
    //creo una connessione al db e lo seleziono
    $conn=mysql_connect("localhost","root","");
    mysql_select_db("sito");
    //inizializzo la variabile messaggio
    $messaggio="";

    ?>

    <html> <!-- striscia in alto-->

    <head>
        <!-- css esterno -->
            <link rel="stylesheet" type="text/css" href="stile.css">
            <title>Inserisci </title>
    </head>
    
    
        <body>
        <!-- striscia in alto -->
            <table>
                    <tr>
                        <td>
                            <p><font face="magneto" color="black" size="20px"><center><b><i>"LA BOTTEGA DELL'USATO"</i></b></center></p>    
                            
                        </td>         
                    </tr>
            </table>
                
    
    
    
    
        <div id="menu">
                                <ul>
    <?php
    //controllo che ci sia una sessione utente, altrimenti "sessione scaduta"
    
    if(isset($_SESSION['utente'])){
    
     echo"<li><font face='georgia' color='red'size='4px'>ciao " . $_SESSION['utente'] . "</li>";
                                        echo"<li><a href='login.php?azione=logout'>logout</a></li>";
                                        echo"<li><a href='cancellato.php'>cancella</a></li>";
                                        
                                        echo"<br>";
                                        echo"<br>";
                                    }else{
                                    
                                    $messaggio= "<font color='black' face='times new roman' size='4px'>sessione scaduta";
                                }
    ?>
       </ul>
                            </div>
    

    <?php

    //seleziono gli annunci inseriti del db e li mostro
    $risultato = mysql_query("SELECT * FROM annunci_cerco");
    //mostro tutti gli annunci inseriti 
    

    while ($riga = mysql_fetch_array($risultato)) {
    echo" <font color='black' face='times new roman' size='4px'>";
    echo"<br> ";
    echo "<br>";
    echo "<br>";
    echo"<br>";
    echo"<font color='black' face='times new roman' size='4px'>";
    ?>
    <table id="table1">

    <tr>
    <td id="testo1"><?php echo"autore: "; ?></td>
    <td id="testo1"><?php echo"" . $_SESSION['utente'] . "";?></td>
    <td id="testo1"><?php echo"cancella";?></td>
    <td id="testo1"><?php echo"modifica";?></td>

    </tr>

    <tr>
        <td id="testo1"><?php echo "titolo:" ?></td>
        <td id="testo"><?php  echo $riga['title']; ?></td>
    </tr> 
    
    <tr>
        <td id="testo1"> <?php echo "body"; ?></td>
        <td id="testo"> <?php echo $riga['body']; ?></td>
        
        
    </tr>
    

    </table>

    <?php }
    

    //chiudo la connessione al db
    mysql_close();
    ?>
    </body>

    </html>
    [/PHP]


  • ModSenior

    Devi usare $riga['username'] visto che lo hai inserito nella tabella del database.


  • User

    @Thedarkita said:

    Devi usare $riga['username'] visto che lo hai inserito nella tabella del database.

    grazie funziona perfettamente!! 😄