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

    search .php non visualizzabile

    salve amici del forum ho preparato uno script search.php ma mi da un errore del tipo: Search term too short anche senza le credenziali posso sapere per favore dove sto sbagliando grazie mille.

    Codice PHP:
    <?php    $button $_GET ['submit'];$search $_GET ['search'];   if(strlen($search)<=1)echo "Search term too short";else{echo "You searched for <b>$search</b> <hr size='1'></br>";mysql_connect("localhost","user","password");mysql_select_db("db");    $search_exploded explode (" "$search); $x "";$construct "";      foreach($search_exploded as $search_each){$x++;if($x==1)$construct .="Protocollo LIKE '%$search_each%'";else$construct .="AND Protocollo LIKE '%$search_each%'";    }  $constructs ="SELECT * FROM protocollo WHERE $construct";$run mysql_query($constructs);    $foundnum mysql_num_rows($run);    if ($foundnum==0)echo "Sorry, there are no matching result for <b>$search</b>.</br></br>1. Try more general words. for example: If you want to search 'how to create a website'then use general keyword like 'create' 'website'</br>2. Try different words with similar meaning</br>3. Please check your spelling";else{   echo "$foundnum results found !<p>";  $per_page 1;$start = isset($_GET['start']) ? $_GET['start']: '';$max_pages ceil($foundnum $per_page);if(!$start)$start=0$getquery mysql_query("SELECT * FROM protocollo WHERE $construct LIMIT $start$per_page");  while($runrows mysql_fetch_assoc($getquery)){$Protocollo $runrows ['Protocollo'];$Numero_fattura $runrows ['Numero_fattura'];$Data_fattura $runrows ['Data_fattura'];$Venditore $runrows ['Venditore'];$Importo $runrows ['Importo'];$Data_pagamento $runrows ['Data_pagamento'];$Acconto $runrows ['Acconto'];$Data_acconto $runrows ['Data_acconto'];$Stato $runrows ['Stato'];   echo "<a href='$url'><b>$title</b></a><br>$desc<br><a href='$url'>$url</a><p>";    }  //Pagination Startsecho "<center>";  $prev = $start - $per_page;$next = $start + $per_page;                       $adjacents = 3;$last = $max_pages - 1;  if($max_pages > 1){   //previous buttonif (!($start<=0)) echo " <a href='search.php?search=$search&submit=Search+source+code&start=$Prev'>Indietro</a> ";              //pages if ($max_pages < 7 + ($adjacents * 2))   //not enough pages to bother breaking it up{$i = 0;   for ($counter = 1; $counter <= $max_pages; $counter++){if ($i == $start){echo " <a href='search.php?search=$search&submit=Search+source+code&start=$i'><b>$counter</b></a> ";}else {echo " <a href='search.php?search=$search&submit=Search+source+code&start=$i'>$counter</a> ";}  $i = $i + $per_page;                 }}elseif($max_pages > 5 + ($adjacents * 2))    //enough pages to hide some{//close to beginning; only hide later pagesif(($start/$per_page) < 1 + ($adjacents * 2))        {$i = 0;for ($counter = 1; $counter < 4 + ($adjacents * 2); $counter++){if ($i == $start){echo " <a href='search.php?search=$search&submit=Search+source+code&start=$i'><b>$counter</b></a> ";}else {echo " <a href='search.php?search=$search&submit=Search+source+code&start=$i'>$counter</a> ";} $i = $i + $per_page;                                       }                          }//in middle; hide some front and some backelseif($max_pages - ($adjacents * 2) > ($start / $per_page) && ($start / $per_page) > ($adjacents * 2)){echo " <a href='search.php?search=$search&submit=Search+source+code&start=0'>1</a> ";echo " <a href='search.php?search=$search&submit=Search+source+code&start=$per_page'>2</a> .... "; $i = $start;                 for ($counter = ($start/$per_page)+1; $counter < ($start / $per_page) + $adjacents + 2; $counter++){if ($i == $start){echo " <a href='search.php?search=$search&submit=Search+source+code&start=$i'><b>$counter</b></a> ";}else {echo " <a href='search.php?search=$search&submit=Search+source+code&start=$i'>$counter</a> ";}   $i = $i + $per_page;                }                                  }//close to end; only hide early pageselse{echo " <a href='search.php?search=$search&submit=Search+source+code&start=0'>1</a> ";echo " <a href='search.php?search=$search&submit=Search+source+code&start=$per_page'>2</a> .... "; $i = $start;                for ($counter = ($start / $per_page) + 1; $counter <= $max_pages; $counter++){if ($i == $start){echo " <a href='search.php?search=$search&submit=Search+source+code&start=$i'><b>$counter</b></a> ";}else {echo " <a href='search.php?search=$search&submit=Search+source+code&start=$i'>$counter</a> ";   } $i = $i + $per_page;              }}}          //next buttonif (!($start >=$foundnum-$per_page))echo " <a href='search.php?search=$search&submit=Search+source+code&start=$next'>Avanti</a> ";    }   echo "</center>";} } ?>

  2. #2
    $search è vuoto perchè < di 1 .....stampa $search con echo $search

  3. #3
    Scusami sei cosi gentile di farmi capire meglio no perche nn ti sei spiegato sono io che non ho capito

  4. #4
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Quote Originariamente inviata da cris83801 Visualizza il messaggio
    Scusami sei cosi gentile di farmi capire meglio no perche nn ti sei spiegato sono io che non ho capito
    Dice che il messaggio compare quando $search contiene 0 o 1 carattere.
    Per fortuna tua è la prima riga del codice che hai postato altrimenti come è impaginato nessuno ti avrebbe risposto.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  5. #5
    Quote Originariamente inviata da cris83801 Visualizza il messaggio
    Scusami sei cosi gentile di farmi capire meglio no perche nn ti sei spiegato sono io che non ho capito

    Per parlare da profani , tu passi dei valori nella barra degli indirizzi ti faccio un esempio

    mettiemo caso che il tuo sito si chiami www.miosito.it

    e la pagina si chiami esempio.php

    avrai

    www.miosito.it/esempio.php

    per passare valori via GET devi aggiungere il simbolo ?

    ad esempio search sarà :

    www.miosito.it/esempio.php?search=valore


    valore nel tuo caso non esiste .....

    Se hai un sito di test possiamo dargli un occhiata ....

    come diceva comunque l'utente sopra se non identi il codice è molto difficile capire qulcosa.....

  6. #6
    Utente di HTML.it L'avatar di kingpin
    Registrato dal
    May 2014
    residenza
    London, UK
    Messaggi
    30
    Il tuo codice è altamente a rischio SQL injection.

    Da uno sguardo veloce vedo:

    echo " <a href='search.php?search=$search

    Se quando apri la pagina il $search è vuoto mi sa che non invierai mai una ricerca.

    Non ho letto tutto il resto perchè è illeggibile, scusa.
    Ultima modifica di kingpin; 19-07-2015 a 17:10

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.