Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 27
  1. #1

    [Problema ricerca record...]

    Questo codice visualizza correttamente il risultato della query. Il mio problema è che vorrei che il risultato si visualizzasse dopo aver inserito nel FORM: RICERCA un titolo di un libro disponibile in biblioteca. In questo modo, invece, appena carico la pagina ho il risultato di tutti i libri disponibili.!!! Aiutatemi!!!

    <? /* dichiariamo alcune importanti variabili per collegarci al database */
    $DBhost = "xxxxx";
    $DBuser = "xxxx";
    $DBpass = "";
    $DBName = "biblioteca";
    $table = "Copia";
    $table1= "Libro";
    $table2= "Esistenza";


    mysql_connect($DBhost,$DBuser,$DBpass) or die("Impossibile collegarsi al server");
    @mysql_select_db("$DBName") or die("Impossibile connettersi al database $DBName");
    $query = "SELECT libro.Titolo, copia.Cod_Copia, libro.Cod_Libro
    FROM libro, copia, esistenza
    WHERE libro.Cod_copia = copia.Cod_Copia
    AND esistenza.Copia = copia.Cod_Copia
    AND copia.disponibilità = 'si'";
    $result = mysql_query($query);
    $number = mysql_numrows($result);


    $i = 0;

    if ($number < 1) {
    print "

    Non ci sono risultati nella tua ricerca
    ";
    }
    else {
    while ($number > $i) {
    $Titolo = mysql_result($result,$i,"Titolo");
    $Cod_Libro = mysql_result($result,$i,"Cod_Libro");
    $Cod_Copia = mysql_result($result,$i,"Cod_Copia");
    print "

    Titolo: $Titolo
    Codice: $Cod_Libro
    Cod.Copia: $Cod_Copia

    ";
    $i++;
    }
    }


    ?>


    <form name="VerificaDispCopia" action="VerificaDispCopia.php">
    <input type="text" name="Titolo">
    <input type="submit" value="Cerca">
    </form>

  2. #2
    Utente di HTML.it L'avatar di zoseppe
    Registrato dal
    Jan 2005
    Messaggi
    306
    ma come la recuperi la variabile "Titolo"?

    per il form:
    echo"
    <form method="POST" action=\"<$_SERVER['PHP_SELF']\">
    <input type=\"text\" name=\"Titolo\">
    <input type=\"submit\" value="Cerca">
    </form>";

    poi recupera la variabile "Titolo"

    $titolo=@trim($_POST['titolo']);

    se non esiste gestisci l'errore:

    if(!$titolo) {
    exit("Nessun titolo specificato");
    }

    esegui la/e query specificando nel WHERE qualcosa del tipo libro.Titolo='$titolo'

  3. #3
    Mi da questo errore!!!Grazie per l'aiuto!
    Parse error: parse error, expecting `','' or `';'' in C:\WM\www\VerificaDispCopia.php on line 51




    <? /* dichiariamo alcune importanti variabili per collegarci al database */
    $DBhost = "localhost";
    $DBuser = "root";
    $DBpass = "";
    $DBName = "biblioteca";
    $table = "Copia";
    $table1= "Libro";
    $table2= "Esistenza";


    mysql_connect($DBhost,$DBuser,$DBpass) or die("Impossibile collegarsi al server");
    @mysql_select_db("$DBName") or die("Impossibile connettersi al database $DBName");
    $query = "SELECT libro.Titolo, copia.Cod_Copia, libro.Cod_Libro
    FROM libro, copia, esistenza
    WHERE libro.Cod_copia = copia.Cod_Copia
    AND esistenza.Copia = copia.Cod_Copia
    AND copia.disponibilità = 'si'
    AND libro.Titolo='$Titolo'";
    $result = mysql_query($query);
    $number = mysql_numrows($result);


    $i = 0;

    if ($number < 1) {
    print "

    Non ci sono risultati nella tua ricerca
    ";
    }
    else {
    while ($number > $i) {
    $Titolo = mysql_result($result,$i,"Titolo");
    $Cod_Libro = mysql_result($result,$i,"Cod_Libro");
    $Cod_Copia = mysql_result($result,$i,"Cod_Copia");
    print "

    Titolo: $Titolo
    Codice: $Cod_Libro
    Cod.Copia: $Cod_Copia

    ";
    $i++;
    }
    }




    echo "
    <form method="POST" action=\"<$_SERVER['PHP_SELF']\">
    <input type=\"text\" name=\"Titolo\">
    <input type=\"submit\" value="Cerca">
    </form>";

    $Titolo=@trim($_POST['Titolo']);

    if( !$Titolo){
    exit("Nessun titolo specificato");}


    ?>

  4. #4
    Utente di HTML.it L'avatar di zoseppe
    Registrato dal
    Jan 2005
    Messaggi
    306
    mmmm onestamente il codice lo scriverei diversamente, un pò più semplice:

    $number = mysql_num_rows($result);

    if ($number ==0) {
    echo"Non ci sono risultati nella tua ricerca";
    exit();
    }


    while($rs=mysql_fetch_array($result))
    {
    echo"$rs[Cod_Titolo] $rs[Cod_libro] $rs[Cod_copia]
    ";
    }

    resto del codice

  5. #5

    non so dove sbaglio!

    Ho fatto come mi hai detto tu, ma mi da un errore in corrispondenza del Form Method


    <? /* dichiariamo alcune importanti variabili per collegarci al database */
    $DBhost = "localhost";
    $DBuser = "root";
    $DBpass = "";
    $DBName = "biblioteca";
    $table = "Copia";
    $table1= "Libro";
    $table2= "Esistenza";


    mysql_connect($DBhost,$DBuser,$DBpass) or die("Impossibile collegarsi al server");
    @mysql_select_db("$DBName") or die("Impossibile connettersi al database $DBName");
    $query = "SELECT libro.Titolo, copia.Cod_Copia, libro.Cod_Libro
    FROM libro, copia, esistenza
    WHERE libro.Cod_copia = copia.Cod_Copia
    AND esistenza.Copia = copia.Cod_Copia
    AND copia.disponibilità = 'si'
    AND libro.Titolo='$Titolo'";
    $result = mysql_query($query);
    $number = mysql_num_rows($result);


    if ($number ==0) {
    echo " Non ci sono risultati nella tua ricerca";
    exit();
    }
    else {
    while ($rs=mysql_fetch_array($result)) {
    echo"$rs[Titolo]$rs[Cod_Libro]$rs[Cod_Copia]
    ";
    }
    }




    echo "
    <form method="POST" action=\"<$_SERVER['PHP_SELF']\">
    <input type=\"text\" name=\"Titolo\">
    <input type=\"submit\" value="Cerca">
    </form>";

    $Titolo=@trim($_POST['Titolo']);

    if( !$Titolo){
    exit("Nessun titolo specificato");}


    ?>

  6. #6

    Re: non so dove sbaglio!

    Originariamente inviato da Treep
    Ho fatto come mi hai detto tu, ma mi da un errore in corrispondenza del Form Method


    <? /* dichiariamo alcune importanti variabili per collegarci al database */
    $DBhost = "localhost";
    $DBuser = "root";
    $DBpass = "";
    $DBName = "biblioteca";
    $table = "Copia";
    $table1= "Libro";
    $table2= "Esistenza";


    mysql_connect($DBhost,$DBuser,$DBpass) or die("Impossibile collegarsi al server");
    @mysql_select_db("$DBName") or die("Impossibile connettersi al database $DBName");
    $query = "SELECT libro.Titolo, copia.Cod_Copia, libro.Cod_Libro
    FROM libro, copia, esistenza
    WHERE libro.Cod_copia = copia.Cod_Copia
    AND esistenza.Copia = copia.Cod_Copia
    AND copia.disponibilità = 'si'
    AND libro.Titolo='$Titolo'";
    $result = mysql_query($query);
    $number = mysql_num_rows($result);


    if ($number ==0) {
    echo " Non ci sono risultati nella tua ricerca";
    exit();
    }
    else {
    while ($rs=mysql_fetch_array($result)) {
    echo"$rs[Titolo]$rs[Cod_Libro]$rs[Cod_Copia]
    ";
    }
    }




    echo "
    <form method="POST" action=\"<$_SERVER['PHP_SELF']\">
    <input type=\"text\" name=\"Titolo\">
    <input type=\"submit\" value="Cerca">
    </form>";

    $Titolo=@trim($_POST['Titolo']);

    if( !$Titolo){
    exit("Nessun titolo specificato");}


    ?>

  7. #7
    Utente di HTML.it L'avatar di zoseppe
    Registrato dal
    Jan 2005
    Messaggi
    306
    non s'è fatto l'escape di "POST" prova a sostituire con \"POST\"

  8. #8
    Utente di HTML.it L'avatar di zoseppe
    Registrato dal
    Jan 2005
    Messaggi
    306
    ......l'ho visto ora: stessa storia con "cerca" e togli anche il "<" prima di $_SERVER[PHP_SELF]
    se continua a non funzionare posta pure l'errore

  9. #9

    grazie problema irrisolto!

    Ciao e grazie per l'aiuto che mi stai dando. E' molto importante per me riuscire a far funzionare questo piccolo motore di ricerca record per la mia tesina pre-tesi!

    allora l'errore che mi esce è il seguente

    Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in C:\WM\www\VerificaDispCopia1.php on line 34

    in corrispondenza di <form .... ecc.... (line 34)

    <? /* dichiariamo alcune importanti variabili per collegarci al database */
    $DBhost = "localhost";
    $DBuser = "root";
    $DBpass = "";
    $DBName = "biblioteca";
    $table = "Copia";
    $table1= "Libro";
    $table2= "Esistenza";


    mysql_connect($DBhost,$DBuser,$DBpass) or die("Impossibile collegarsi al server");
    @mysql_select_db("$DBName") or die("Impossibile connettersi al database $DBName");
    $query = "SELECT libro.Titolo, copia.Cod_Copia, libro.Cod_Libro
    FROM libro, copia, esistenza
    WHERE libro.Cod_copia = copia.Cod_Copia
    AND esistenza.Copia = copia.Cod_Copia
    AND copia.disponibilità = 'si'
    AND libro.Titolo='$Titolo'";
    $result = mysql_query($query);
    $number = mysql_num_rows($result);


    if ($number ==0) {
    echo " Non ci sono risultati nella tua ricerca";
    exit();
    }
    else {
    while ($rs=mysql_fetch_array($result)) {
    echo"$rs[Titolo]$rs[Cod_Libro]$rs[Cod_Copia]
    ";
    }
    }

    echo "
    <form method=\"POST\" action=\"$_SERVER['PHP_SELF']\"
    <input type=\"text\" name=\"Titolo\">
    <input type=\"submit\" value=\"Cerca\">
    </form>";


    $Titolo=@trim($_POST['Titolo']);

    if( !$Titolo){
    exit("Nessun titolo specificato");}

    ?>

  10. #10
    Utente di HTML.it L'avatar di zoseppe
    Registrato dal
    Jan 2005
    Messaggi
    306
    il primo tag del form non è chiuso, e poi è necessario eliminare gli apici da $_SERVER['PHP_SELF']:
    ossia:
    Codice PHP:
    echo"
    <form method=\"POST\" action=\"
    $_SERVER[PHP_SELF]\">"

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.