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

    Problema lista record database

    Salve ragazzi,
    ho una tabella con varie colonne nel mio database mysql che sarebbe la lista degli oggetti in vendita, quindi nome modello ed altre cose, ho il bisogno di stampare i record nella pagina del mio shop, ma mi da problemi il codice..

    codice:
    //Record
    
    // Creo una variabile dove imposto il numero di record 
    // da mostrare in ogni pagina
    $x_pag = 5;
    
    // Recupero il numero di pagina corrente.
    // Generalmente si utilizza una querystring
    $pag = $_GET['pag'];
    
    // Controllo se $pag è valorizzato...
    // ...in caso contrario gli assegno valore 1
    if (!$pag) $pag = 1;
    
    // Uso mysql_num_rows per contare le righe presenti
    // all'interno della tabella agenda
    $all_rows = mysql_num_rows(mysql_query("SELECT id FROM modelli"));
    
    // Tramite una semplice operazione matematica definisco
    // il numero totale di pagine
    $all_pages = ceil($all_rows / $x_pag);
    
    // Calcolo da quale record iniziare
    $first = ($pag - 1) * $x_pag;
    
    // Recupero i record per la pagina corrente...
    // utilizzando LIMIT per partire da $first e contare fino a $x_pag
    $rs = mysql_query("SELECT * FROM modelli LIMIT $first, $x_pag");
    $nr = mysql_num_rows($rs);

    codice:
    <?
          if ($nr != 0){
      for($x = 0; $x < $nr; $x++){
        $row = mysql_fetch_assoc($rs);
        echo "<table><tr>";
        echo "<td>" . $row['id'] . "</td>";
        echo "<td>" . $row['categoria'] . "</td>";
        echo "<td>" . $row['nomemodello'] . "</td>";
        echo "</tr></table>";
      }
    }else{
      echo "Nessun modello trovato!";
    }
    
    // Se le pagine totali sono più di 1...
    // stampo i link per andare avanti e indietro tra le diverse pagine!
    if ($all_pages > 1){
      if ($pag > 1){
        echo "<a href=\"" . $_SERVER['PHP_SELF'] . "?pag=" . ($pag - 1) . "\">";
        echo "Pagina Indietro</a>";
      } 
      if ($all_pages > $pag){
        echo "<a href=\"" . $_SERVER['PHP_SELF'] . "?pag=" . ($pag + 1) . "\">";
        echo "Pagina Avanti</a>";
      } 
    }
    ?>
    Pagina: www.virtualdimension-studios.com/shop/index.php

    Il problema è che, seppur ci siano dei record nel database, mi genera "Nessun modello trovato" come se $nr che sarebbe il numero di record nel database fosse uguale a 0...

    Perchè mi da questo errore? Grazie.

  2. #2
    Stampa $first e $x_pag prima di eseguire la query.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Originariamente inviato da satifal
    Stampa $first e $x_pag prima di eseguire la query.
    non ho capito a quale query ti riferisci?

  4. #4
    Originariamente inviato da RuggeriExtreme
    non ho capito a quale query ti riferisci?
    Vabbè...annamo bbene

    Parli di una variabile $nr che probabilmente non è valorizzata correttamente. Da quale query la ricavi? Inoltre quale query utilizza i valori $first e $x_pag che ti ho suggerito di stampare?
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  5. #5
    Originariamente inviato da satifal
    Vabbè...annamo bbene

    Parli di una variabile $nr che probabilmente non è valorizzata correttamente. Da quale query la ricavi? Inoltre quale query utilizza i valori $first e $x_pag che ti ho suggerito di stampare?
    la query $rs se non erro, $first e $x_pag si trovano comunque prima di quella query.. poi io quelle query non le sto stampando.. sto dando un valore ma non le stampo da nessuna parte

  6. #6
    Originariamente inviato da RuggeriExtreme
    la query $rs se non erro, $first e $x_pag si trovano comunque prima di quella query.. poi io quelle query non le sto stampando.. sto dando un valore ma non le stampo da nessuna parte
    Il fatto che si trovino prima della query non significa che abbiano il valore che ti aspetti e proprio perchè la query non la stampi che ti ho chiesto di stampare i valori!!!
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  7. #7
    Originariamente inviato da satifal
    Il fatto che si trovino prima della query non significa che abbiano il valore che ti aspetti e proprio perchè la query non la stampi che ti ho chiesto di stampare i valori!!!
    ho provato a stampare $nr e non esce alcun valore, ho provato anche a stampare $first che è corretto e $x_pag che è corretto.. la domanda ora è, perchè? XD

  8. #8
    ho capito che sono le query SELECT che non funzionano.. ma la sintassi è corretta..

    e se inserisco or die (mysql_error()) mi appare come errore:

    Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

    Molto, molto strano.. cos'è?

  9. #9
    aaa probabilmente non si connette di proprio al database perchè si trova in una cartella chiamata Shop, ho inserito:

    @include ("/connect_db.php");

    quello slash non dovrebbe risolvere il mio problema? ovvero considerare la directory principale?

  10. #10
    risolto

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.