• User Newbie

    paginazione e query di estrazione

    Buongiorno a tutti i mebri del forum.
    sono una principiante del linguaggio php ed incappo sempre in mille problemi, ma quello che ancora non risolvo è il seguente.
    Ho una query di estrazione che funziona come un motore di ricerca e fino a qui va tutto bene.
    quando ho deciso di dare un limite al numero di informazioni da presentare a video non sono stata più capace ad andare avanti con lo sv. del codice.

    La query di estrazione è la seguente:

    mysql_query("SELECT nome, cognome, via,localita, telefono, descrizione, mail FROM iscritti WHERE discipline='"
    .$_REQUEST['discipline']."' and provincia='".$_REQUEST['provincia']."'");

    Qualche anima gentile mi può aiutare?

    Grazie
    Soleada:gthi:


  • User Newbie

    Non riesco a capire dove stò sbagliando..


  • User Attivo

    Neanche io: anzi a dire il vero non ho neanche capito qual è il problema... 😉
    Se il problema è che non sai come limitare i risultati di una query, ti serve il comando LIMIT - sennò, non ho capito la domanda

    Potresti essere un po' più chiara? Thanks - e benvenuta sul forum! 🙂


  • User Newbie

    Ciao SEO italy,

    devo dire che la mia inesperienza in merito al linguaggio php mi porta a volte a non esprimermi chiaramente, scusami.

    Se possibile vorrei poter estrarre e visualizzare a video 10 voci alla volta, tra quelle ricercate nel data base.
    Per fare un esempio. Se cerco in provincia di Roma un commercialista, e nel database ne figurano iscritti 90, vorrei che la query estraesse i primi 10 nominativi e in basso alla pagina comparisse una numerazione delle pagine seguenti necessarie a visualizzare i rimanenti 80 commercialisti.
    Come fà Google quando inserisco una parola da riceracare.

    Grazie ancora
    soleada


  • ModSenior

    Ciao soleada,

    questo thread dovrebbe fare al caso tuo.


  • User Newbie

    Buongiorno,

    ieri sera ho continuato a lavore al codice , ma niente da fare.
    Dopo molti tentativi ho "copiato e adattato" questo codice, ma quando lo mando in funzione mi restituisce una pagina bianca.
    dove Stò sbagliando?
    Aiuto Aiuto :sad:

    Codice che ho reso "incriminato":

    [php]<?php
    $host = "localhost";
    $user = "root";
    $password = "root";
    $database = "utenti";

    $righe_per_pagina = 1;
    $url_base = "indextre.php";
    $pagine_vicine = 1;
    $link = mysql_connect($host, $user, $password)
    or die ("non riesco a connettermi");

    mysql_select_db($database, $link)
    if (!$mysql_select_db)
    {
    die ("errore nella selezione del database : ". mysql_error());

    }
    //calcolo il numero delle pagine
    //ricavo il numero totale di record
    $query = " SELECT COUNT (nome, cognome, luogo, discipline) FROM iscritti WHERE discipline='"
    .$_REQUEST['discipline']."' and provincia='".$_REQUEST['provincia']."'";
    $result = mysql_query ($query);
    //recor complessivi
    $tot_righr = mysql_result($result,0);
    //totale pagine
    $tot_pagine = ceil($tot_righe / $righe_per_pagina);

    //pagina corrente
    $pagina_corrente = isset($_get['pag']) ? (int)$_get['pag'] ;
    //pagina corrente minore di 1
    if($pagina_corrente < 1) {
    header(' location: '.$url_base);
    exit();
    }
    if($pagina_corrente > $tot_pagine) {
    header (' location: '.crea_url($url_base, $tot_pagina));
    exit();
    }

    // calcolo la prima riga da estrarre con la query
    $prima_riga = ($pagina_corrente - 1) * $righe_per_pagina;

    $query = " SELECT nome, cognome, luogo, discipline FROM iscritti WHERE discipline='"
    .$_REQUEST['discipline']."' and provincia='".$_REQUEST['provincia']."' LIMIT ".$prima_riga, $righe_per_pagina";

    $result = mysql_query($query);
    if (!$result) {
    die("Errore nella query $query: " . mysql_error());
    }

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

    echo "<table width="300" border="1" cellpadding="1" cellspacing="1" align="left">\n";
    echo " <tr bgcolor="rgb(83,135,190)">\n";
    echo " <td align="left" valign="middle"><font color="rgb(255,255,255)"><b><pre>".$row['nome']." ".$row['cognome']."</font></pre></td>\n";
    echo " </tr>\n";
    echo " <tr>\n";
    echo " <td align="left" valign="middle"><b>Prov. di ".$row['luogo']." Professione ".$row['discipline']."</td>\n";
    echo " </tr>\n";
    echo "</table>";

    }

    // creazione dei link di paginazione
    $link_paginazione = paginazione($tot_pagine, $url_base, $pagina_corrente, $pagine_vicine);

    ?>[/php]