Visualizzazione risultati 1 fino 8 di 8

Discussione: [SCRIPT/PHP] News Per Pagina

  1. #1
    Guest

    Predefinito [SCRIPT/PHP] News Per Pagina

    Ciao , ho creato questo piccolo script php per la gestione delle news , in modo che me ne apra tot per pagina e possa vederle tutte ...
    purtroppo non va perchè mi da errore sulla linea 44 ^_^
    Qualcuno sa aiutarmi ?

    Codice PHP:
    <?

    include "1as/inc/config.inc.php";

    #Compilo la query SELECT che selezionerà tutti i campi contenuti nella tabella
    $MySql = mysql_query ("SELECT COUNT(id) AS totale FROM news") or die ( "Non riesco ad eseguire la richiesta");
    #Se la query non riesce si visualizzerà un messaggio di errore
    #I risultati della query li avrò nell'array $risultato, grazie alla funzione mysql_fetch_array e grazie al while
    #ripeterò la query fino all'esaurimento di "risposte" nel database
    while ( $rs = mysql_fetch_array($MySql)) {
    $totalenews = $rs["totale"];
    }

    $numeroperpagina = 10; //contiene il numero esatto delle news che vogliamo visualizzare per pagina.
    $totalepagine = ceil($totalenews/ $numeroperpagina); // divide il numero totale delle news per il numero di news da visualizzare in ogni pagina, ottiene il numero totale di pagine (Grazie alla funzione ceil sarà arrotondato, ovvero senza virgole) contenuto nella variabile $totalenews
    if ($_GET['pagina'] == "") {
    $pag = "1"; // tramite IF rendo come pagina di default la numero 1
    }
    else {
    $pag = $_GET['pagina'];
    }
    $current_page = (!$pag) ? 1 : (int)$pag;
    $primo = ($current_page - 1) * $numeroperpagina; // calcolo il primo valore di Limit, ovvero se la pagina è ad esempio la numero 1 e le news totali sono 20, la query deve leggere le prime 10

    $MySql = "SELECT * FROM news ORDER BY id LIMIT $primo, $numeroperpagina"or die ( "Non riesco ad eseguire la richiesta");
    while (
    $rs = mysql_fetch_array ($MySql)){

    $id = $rs [ "id"];
    $testo = $rs["Testo"];
    echo
    "$id<br>$testo<hr> ";

    }
    echo
    "<br><br>";

    $paginazione = "Pagine totali: " . $totalepagine. "<br>[";
    for(
    $i = 1; $i <= $totalepagine; $i++) {
    if(
    $i == $current_page) {
    $paginazione .= $i . " ";
    } else {
    $paginazione .= "|<a href="news.php?pagina=$i" title="Vai alla pagina $i\">$i</a>|";
    }
    }
    $paginazione .= "]";
    // in questa cella inseriamo la paginazione
    ?>
    <?= $paginazione
    ;?>

  2. #2
    Guest

    Predefinito

    1) qual'è la riga 44? non mi metto ci certo a contarle ...
    2) che errore ti da di preciso?

  3. #3
    Guest

    Predefinito

    Codice PHP:
    <?

    include "1as/inc/config.inc.php";

    #Compilo la query SELECT che selezionerà tutti i campi contenuti nella tabella
    $MySql = mysql_query ("SELECT COUNT(id) AS totale FROM news") or die ( "Non riesco ad eseguire la richiesta");
    #Se la query non riesce si visualizzerà un messaggio di errore
    #I risultati della query li avrò nell'array $risultato, grazie alla funzione mysql_fetch_array e grazie al while
    #ripeterò la query fino all'esaurimento di "risposte" nel database
    while ( $rs = mysql_fetch_array($MySql)) {
    $totalenews = $rs["totale"];
    }

    $numeroperpagina = 10; //contiene il numero esatto delle news che vogliamo visualizzare per pagina.
    $totalepagine = ceil($totalenews/ $numeroperpagina); // divide il numero totale delle news per il numero di news da visualizzare in ogni pagina, ottiene il numero totale di pagine (Grazie alla funzione ceil sarà arrotondato, ovvero senza virgole) contenuto nella variabile $totalenews
    if ($_GET['pagina'] == "") {
    $pag = "1"; // tramite IF rendo come pagina di default la numero 1
    }
    else {
    $pag = $_GET['pagina'];
    }
    $current_page = (!$pag) ? 1 : (int)$pag;
    $primo = ($current_page - 1) * $numeroperpagina; // calcolo il primo valore di Limit, ovvero se la pagina è ad esempio la numero 1 e le news totali sono 20, la query deve leggere le prime 10

    $MySql = "SELECT * FROM news ORDER BY id LIMIT $primo, $numeroperpagina"or die ( "Non riesco ad eseguire la richiesta");
    while (
    $rs = mysql_fetch_array ($MySql)){

    $id = $rs [ "id"];
    $testo = $rs["Testo"];
    echo
    "$id<br>$testo<hr> ";

    }
    echo
    "<br><br>";

    $paginazione = "Pagine totali: " . $totalepagine. "<br>[";
    for(
    $i = 1; $i <= $totalepagine; $i++) {
    if(
    $i == $current_page) {
    $paginazione .= $i . " ";
    } else {
    //==================================
    //==================================
    $paginazione .= "|<a href=\"news.php?pagina=$i\" title=\"Vai alla pagina $i\">$i</a>|";
    //==================================
    //==================================
    }
    }
    $paginazione .= "]";
    // in questa cella inseriamo la paginazione
    ?>
    <?= $paginazione
    ;?>
    devi "backslashare" le virgolette di quella riga (evidenziata con i commenti), altrimenti ti da un errore di parse

    mavericck
    Ultima modifica di mavericckweb : 04-02-2006 alle ore 17.05.24

  4. #4
    Guest

    Predefinito

    scusate ot cosa vol dire backslashare?

  5. #5
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Mettere questo carattere \ (il backslash) prima di ".
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  6. #6
    Guest

    Predefinito

    Grazie , ora però mi da problema alla riga 26

    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\WM\www\news.php on line 26


    ù.ù grazie se potresti vedere anche questo.

    ------> backslashare = mettere un \ o /

  7. #7
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    C'è lo spazio prima di "or die..." o lo hai dimenticato?
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  8. #8
    Guest

    Predefinito

    Non credo cambi molto ^_^

    Cmq , l'errore era :

    $MySql = mysql_query ("SELECT * FROM news ORDER BY id LIMIT $primo, $numeroperpagina") or die ( "Non riesco ad eseguire la richiesta");

    Grazie a tutti ^__^

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •