Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    warning visualizzazione

    salve ragazzi, la seguente pagina permette di stampare il risultato di una ricerca per attore, ma mi dà 2 problemi.
    - il primo mi stampa le occorrenze trovate e mi dà un warning:
    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\programmi\easyphp1-8\www\database_film\viewattori.php on line 113

    - il secondo quando clicco sulla pagina invece di passare alla stessa pagina il nome completo me lo spezza:

    es: chiave passata=Jonny Depp, gli passa solo Jonny
    Robert De Niro gli passa solo Robert




    viewattori.php
    <?

    Session_start();

    include("config.PHP");
    include("selezione.PHP");


    $chiave = isset( $_GET['chiave'] ) ? $_GET['chiave'] : '';


    if (!isset($_GET['start']) OR $_GET['start']<0) {
    $start=0;
    $step=20;
    } else {
    $start=intval($_GET['start']);
    $step=20;
    }



    $chiave=ucwords($chiave);
    $chiave=trim($chiave);

    echo "$chiave";

    $query=mysql_query("SELECT id, titolo, genere, attore1, attore2, attore3, trama, regia, durata, anno FROM film where attore1 = '$chiave' or attore2 = '$chiave' or attore3 = '$chiave' order by titolo asc LIMIT $start, $step ")OR DIE("non riesco a selezionare");

    $num_righe=mysql_num_rows($query);
    if(!$num_righe){
    echo "Nessuna corrispondenza trovata ";
    }
    else
    {





    ?>






    <html>
    <body>



    <div align="center">


    <font color="#000099" size="4" face="Arial, Helvetica, sans-serif">Elenco
    Film </font></p>
    </div>
    <div align="center"></div>
    <div align="center">
    <table width="800" border="1" cellspacing="1" cellpadding="0">
    <tr bordercolor="#FFFFFF" bgcolor="#000099">
    <td width="6"><font face="Arial, Helvetica, sans-serif" size="2" color="#FFFFFF">Numero</font></td>
    <td width="280"><div align="center"><font face="Arial, Helvetica, sans-serif" size="2" color="#FFFFFF">Nome</font></div></td>
    <td width="100"><div align="center"><font face="Arial, Helvetica, sans-serif" size="2" color="#FFFFFF">Genere</font></div></td>
    <td width="320"><div align="center"><font face="Arial, Helvetica, sans-serif" size="2" color="#FFFFFF">Attori</font></div></td>
    <td width="77"><font face="Arial, Helvetica, sans-serif" size="2" color="#FFFFFF">Operazione</font></td>

    </tr>
    <?


    while ($row=mysql_fetch_array($query))
    {

    $_SESSION['tramasess']= $row['trama'];

    echo "<tr bgcolor='#CCCCCC'>";
    echo "<td width='6'> <font face='Arial, Helvetica, sans-serif' size='2' color='#000099'>$row[id]</font></td>";
    echo "<td width='280'> <font face='Arial, Helvetica, sans-serif' size='2' color='#000099'> $row[titolo]</font></td>";
    echo "<td width='80'><font face='Arial, Helvetica, sans-serif' size='2' color='#000099'> $row[genere]</font></td>";
    echo "<td width='300'><font face='Arial, Helvetica, sans-serif' size='2' color='#000099'> $row[attore1],$row[attore2],$row[attore3]</font></td>";
    echo "<td width='5'><font face='Arial, Helvetica, sans-serif' size='2' color='#000099'> Modifica </font></td>";


    echo"</tr>";
    }

    ?>
    </table>




    </div>
    <div align="center">
    <table width=37% border=0 align="center">
    <tr>
    <td width=29% align=left>
    <?

    if ($start>0)
    {
    $start_back = $start - $step;


    echo " <a href=viewattori.php?start=$start_back&chiave=$chia ve>precedenti</a>";

    }

    ?>
    <div align="right"></div></td>
    <?

    $query1=mysql_query("SELECT count(*) AS tot FROM film where where attore1 ='$chiave' or attore2 ='$chiave' or attore3 ='$chiave' ");


    $row=mysql_fetch_array($query1);

    echo "$row[tot]";

    $pages=intval(($row["tot"]-1) / $step)+1;

    ?>
    <td width=38% align=center>
    <?

    for ($i=0; $i<$pages AND $i<20; $i++)
    {

    $start_page = $i * $step;
    echo "<a href=viewattori.php?start=$start_page&chiave=$chia ve>" . ($i+1) . "</a> ";

    }

    ?>
    </td>
    <td width=33%>
    <?

    if ($start + $step < $row["tot"])
    {

    $start_next = $start + $step;

    echo "<a href=viewattori.php?start=$start_next&chiave=$chia ve>successivi</a>";

    }


    ?>
    </td>
    </tr>
    </table>



    </div>
    Roberto Dungino

  2. #2
    il primo problema l'ho già risolto, era perchè nella select ho inserito 2 volte where (SELECT count(*) AS tot FROM film where where attore1 ='$chiave' or attore2 ='$chiave' or attore3 ='$chiave' ).

    adesso spero che per il secondo problema qualcuno mi dia una mano !!
    Roberto Dungino

  3. #3
    Originariamente inviato da dungino
    il primo problema l'ho già risolto, era perchè nella select ho inserito 2 volte where (SELECT count(*) AS tot FROM film where where attore1 ='$chiave' or attore2 ='$chiave' or attore3 ='$chiave' ).

    adesso spero che per il secondo problema qualcuno mi dia una mano !!
    A Robbè so Ciccio, fammi sapere più in dettaglio quando e dove "passi" il nome dell'attore (oppure chiamami che forse si fa prima)

  4. #4
    per chi ne ha bisogno, l'errore è qui:

    echo "<a href=viewattori.php?start=$start_next&chiave=$chia ve>successivi</a>";


    il valore di href non è delimitato tra apici, quindi il browser prende come valore la prima parola finché non trova uno spazio; quindi si risolve così:

    echo "successivi";

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.