Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 25
  1. #11
    abbi pazienza ma non capisco in pratica cosa devo fare?
    devo modificare sia l'invio sia la ricerca delle opere?
    come?


  2. #12
    Dunque, pensa al concetto "TRUE/FALSE" ovvero "vero o falso"
    In questo caso il numero 1 vuol dire "vero" mentre il numero 0 sta per "falso"

    Quando inserisci i record tu hai i cinque checkbox

    1. Amicizia
    2. Amore
    3. Natura
    4. Storie di vita
    5. Vario

    Se l'utente ( stiamo ancora parlando dell'inserimento ) seleziona i checkbox Natura e Vario, nel database i dati si andranno ad inserire in questo modo

    Codice PHP:
    amicizia amore natura storiedivita Vario |
    0        0     1      0            0     
    dove, ripeto, 1 sta vero ( quindi selezionato ) e 0 sta per falso ( non selezionato, quindi non riguardante questo record )

    Ora, nella ricerca, se l'utente seleziona come soggetto "amore"
    fai fare una query di questo tipo
    select * from tabella where amore=1

    e la ricerca di estrapolerà tutti i dati dove amore è uguale a 1 ovvero dove amore è uguale a vero
    spero di essermi spiegato
    Chiamatemi sven se volete non ho voglia di fare una nuova email per una nuova registrazione xD
    Mac Future User , Ventilatore for PC Cooler user , - dry is coming -

  3. #13
    quindi questo come dovrebbe essere? cosi non va bene, no?

    echo "

    Scelga il soggetto della sua opera (anche più di uno):</P>";
    echo "Amicizia: <input type=\"checkbox\" name=\"soggetto[]\" value=\"amicizia\" />
    ";
    echo "Amore: <input type=\"checkbox\" name=\"soggetto[]\" value=\"amore\" />
    ";
    echo "Natura: <input type=\"checkbox\" name=\"soggetto[]\" value=\"natura\" />
    ";
    echo "Storie di vita: <input type=\"checkbox\" name=\"soggetto[]\" value=\"storie di vita\" />
    ";
    echo "Vario: <input type=\"checkbox\" name=\"soggetto[]\" value=\"vario\" />

    ";

    e neanche questo?

    $id1= $_REQUEST['id'];
    $autore1= $autore;
    $genere1= $genere;
    $soggetto1= $soggetto;
    $composizione1= $composizione;


    $sql = "INSERT INTO opere (id,autore,genere,soggetto,composizione) VALUES('$id1','$autore1','$genere1','$soggetto1',' $composizione1')";


    Infine anche questo per la ricerca, ma come????

    function visualizzaform(){

    echo "<form name=\"search\" action=\"soggetto.php\" method=\"post\">Cerca per soggetto dell'opera: <select name=\"filter\" size=\"1\">";
    echo "<option name=\"soggetto\" value=\"1\">Amicizia</option>";
    echo "<option name=\"soggetto\" value=\"2\">Amore</option>";
    echo "<option name=\"soggetto\" value=\"3\">Natura</option>";
    echo "<option name=\"soggetto\" value=\"4\">Storie di Vita</option>";
    echo "<option name=\"soggetto\" value=\"5\">Vario</option>";
    echo "</select>";
    echo "<input type=\"submit\" name=\"cerca\" value=\"cerca\" />
    ";
    echo "</form>";

    }


    if (!isset($_POST['cerca'])) {

    visualizzaform();

    } else if (isset($_POST['cerca'])) {

    $scelta= $_POST['filter'];

    $sql="SELECT * FROM opere WHERE soggetto LIKE '%$scelta%'";

    $risultato= mysql_query($sql);

    $total= mysql_num_rows($risultato);

    if ($total == 0) {

    echo "Non ho trovato niente!";
    }else{

    while( $r = mysql_fetch_array($risultato)){
    echo $r['Autore'] . "
    ";
    echo $r['Soggetto'] . "
    ";
    echo $r['Genere'] . "
    ";
    echo $r['Composizione'] . "

    ";

    x favore puoi essere più preciso? se ti chiedo aiuto è perchè non so dove mettere le mani...

  4. #14
    ????????????????? nulla?

  5. #15
    prima di tutto, chiama i checkbox con il nome e non con le parentesti quadre e metti in tutti i checkbox value=\"1\"
    esempio
    echo "Storie di vita: <input type=\"checkbox\" name=\"storiedivita\" value=\"1\" />
    ";
    al posto di
    echo "Storie di vita: <input type=\"checkbox\" name=\"soggetto[]\" value=\"storie di vita\" />
    ";

    la query di insert
    Elimina il campo soggetto e, come ti ho detto, crea quei 5 campi, poi la query sarà cosi
    $sql = "INSERT INTO opere (id,autore,amicizia,amore,natura,storiedivita,vari o,soggetto,composizione) VALUES('$id1','$autore1','" . $_POST['amicizia'] . "','" . $_POST['amore'] . "',,'" . $_POST['natura'] . "','" . $_POST['storiedivita'] . "',,'" . $_POST['vario'] . "','$soggetto1','$composizione1')";

    mentre il select lo modificherai mettendo il nome del campo del database in value

    echo "<form name=\"search\" action=\"soggetto.php\" method=\"post\">Cerca per soggetto dell'opera: <select name=\"filter\" size=\"1\">";
    echo "<option name=\"soggetto\" value=\"amicizia\">Amicizia</option>";
    echo "<option name=\"soggetto\" value=\"amore\">Amore</option>";
    echo "<option name=\"soggetto\" value=\"natura\">Natura</option>";
    echo "<option name=\"soggetto\" value=\"storiedivita\">Storie di Vita</option>";
    echo "<option name=\"soggetto\" value=\"vario\">Vario</option>";
    echo "</select> ";
    echo "<input type=\"submit\" name=\"cerca\" value=\"cerca\" />
    ";
    echo "</form>";

    e la query sarà

    $filtro = '' ;

    if ( $_POST['filter'] == 'amicizia' or $_POST['filter'] == 'amore' or $_POST['filter'] == 'natura' or $_POST['filter'] == 'storiedivita' or $_POST['filter'] == 'vario' )
    {
    $filtro = "WHERE ". $_POST['filter'] . "=1" ;
    }

    $sql="SELECT * FROM opere " . $filtro;
    Chiamatemi sven se volete non ho voglia di fare una nuova email per una nuova registrazione xD
    Mac Future User , Ventilatore for PC Cooler user , - dry is coming -

  6. #16
    capito quasi tutto, ho ancora un paio di dubbi....

    1 - quello in grassetto come devo modificarlo? adesso 'soggetto non c'è +...!

    2 - nel database nella tabella opere nella colonna soggetto cosa vedrò?

    <?

    $autore = "";
    $genere = "";
    $soggetto= "";
    $composizione= "";

    function checkform() {
    global $autore, $genere, $soggetto, $composizione;
    $msg = "";
    if (isset($_POST['autore'])) $autore = $_POST['autore']; else $autore = "";
    if ($autore == "") $msg .= "Inserire il proprio nome
    ";

    if (isset($_POST['genere'])) $genere = $_POST['genere']; else $genere = "";
    if ($genere == "") $msg .= "Scegliere il genere dell'opera
    ";

    if (isset($_POST['soggetto'])) $soggetto = implode(',',$_POST['soggetto']); else $soggetto = "";
    if ($soggetto == "") $msg .= "Scegliere il soggetto dell'opera
    ";


    if (isset($_POST['composizione'])) $composizione = $_POST['composizione']; else $composizione = "";
    if ($composizione == "") $msg .= "Inserire un'opera!
    ";

    return $msg;
    }

  7. #17
    le puoi ommettere
    Chiamatemi sven se volete non ho voglia di fare una nuova email per una nuova registrazione xD
    Mac Future User , Ventilatore for PC Cooler user , - dry is coming -

  8. #18
    Originariamente inviato da bonaprogram
    le puoi ommettere
    ok, ho fatto come hai detto xò:

    1 - non mi inserisce + i record nel database, neanche il nome dell'autore e l'opera e il genere...

    2 - il soggetto delle opere in database è per tutte 0

    3 - "Notice: Undefined index: amicizia in c:\programmi\easyphp1-8\www\invio.php on line 122" ---> questo mi viene x qualsiasi soggetto scelga...

    4 - se cerco x soggetto mi da come risultato tutte le opere in database (hanno tutte 0 a soggetto..)

    ti invio il codice aggiornato...


    <?

    $autore = "";
    $genere = "";
    $composizione= "";

    function checkform() {
    global $autore, $genere, $composizione;
    $msg = "";
    if (isset($_POST['autore'])) $autore = $_POST['autore']; else $autore = "";
    if ($autore == "") $msg .= "Inserire il proprio nome
    ";

    if (isset($_POST['genere'])) $genere = $_POST['genere']; else $genere = "";
    if ($genere == "") $msg .= "Scegliere il genere dell'opera
    ";

    if (isset($_POST['composizione'])) $composizione = $_POST['composizione']; else $composizione = "";
    if ($composizione == "") $msg .= "Inserire un'opera!
    ";

    return $msg;
    }

    function VisualizzaForm() {
    global $autore, $genere, $composizione;
    echo "<form name=search action=invio.php method=post>";
    echo "<input type=\"hidden\" name=\"id\" value=\"\">";
    echo "

    Inserisca il suo nome:</p>";
    echo "<input type=\"text\" name=\"autore\" size=\"40\" maxlenght=\"40\" value=\"" . $autore . "\" />";
    echo "

    ";
    echo "

    Scelga il genere della sua opera:</p>";
    echo "Aforisma: <input type=\"radio\" name=\"genere\" value=\"aforisma\" />
    ";
    echo "Epistola: <input type=\"radio\" name=\"genere\" value=\"epistola\" />
    ";
    echo "Poesia: <input type=\"radio\" name=\"genere\" value=\"poesia\" />
    ";
    echo "Racconto Breve: <input type=\"radio\" name=\"genere\" value=\"racconto breve\" />
    ";
    echo "Racconto Lungo: <input type=\"radio\" name=\"genere\" value=\"racconto lungo\" />

    ";
    echo "

    Scelga il soggetto della sua opera (anche più di uno):</P>";
    echo "Amicizia: <input type=\"checkbox\" name=\"amicizia\" value=\"1\" />
    ";
    echo "Amore: <input type=\"checkbox\" name=\"amore\" value=\"1\" />
    ";
    echo "Natura: <input type=\"checkbox\" name=\"natura\" value=\"1\" />
    ";
    echo "Storie di vita: <input type=\"checkbox\" name=\"storiedivita\" value=\"1\" />
    ";
    echo "Vario: <input type=\"checkbox\" name=\"vario\" value=\"1\" />

    ";
    echo "

    Infine, inserisca qui il suo componimento:</p>";
    echo "<textarea name=\"composizione\" rows=\"30\" cols=\"60\">" . $composizione . "</textarea>";
    echo "<input type=\"submit\" name=\"submit\" value=\"invia\" />
    ";
    echo "</form>";

    }



    if (isset($_POST['submit'])) {
    $messaggio = checkform();
    if ($messaggio != "") {
    echo "<h2>Errore:
    " . $messaggio . "</h2>";
    VisualizzaForm();
    }
    else {
    include("connection.inc");

    $dbname="utenti";

    mysql_select_db('utenti',$conn);

    $id1= $_REQUEST['id'];
    $autore1= $autore;
    $genere1= $genere;
    $composizione1= $composizione;


    $sql = "INSERT INTO opere (id,autore,genere,soggetto,composizione) VALUES('$id1','$autore1','$genere1','" . $_POST['amicizia'] . "','" . $_POST['amore'] . "',,'" . $_POST['natura'] . "','" . $_POST['storiedivita'] . "',,'" . $_POST['vario'] . "','$composizione1')";

    mysql_query($sql,$conn);

    echo "

    questi sono i dati che saranno associati alla tua opera:

    ";
    echo "Autore : $autore1
    ";
    echo "Genere : $genere1
    ";
    echo "Composizione : $composizione1
    ";

    }
    }
    else {
    VisualizzaForm();
    }
    }

    else {header ("location: login.php"); }

    ?>

    ho tolto $soggetto da tutte le parti, ma non so adesso come visualizzare il campo, piucchealtro mi preoccupa che non mi vanno + i dati al DB...che casino!!

  9. #19
    non mi abbandonate ora che sono vicino alla soluzione...

  10. #20
    prova a fare mysql_query($sql,$conn) or die ( mysql_error ( ) ) ;
    e vedi che errore da
    Chiamatemi sven se volete non ho voglia di fare una nuova email per una nuova registrazione xD
    Mac Future User , Ventilatore for PC Cooler user , - dry is coming -

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 © 2026 vBulletin Solutions, Inc. All rights reserved.