Newsgroup: it.comp.www.php
Titolo: help per debug

ciao, avevo una serie di pagine in php. facevano una semplice select da un 
database.
Ha funzionato fino a pochi giorni fa. Il mio provider (tophost) ha avuto dei 
problemi e da allora non gira più.
L'errore è questo:
----
Questa pagina non redireziona in modo corretto
Firefox ha rilevato che il server sta redirezionando la richiesta per
questo indirizzo in modo che non possa mai essere completata.
* Questo problema spesso è causato dal blocco o dal rifiuto dei
cookie.
---
Nella mia pagina non ci sono cookie. Forse solo quelli del servizio banner 
di google.
e non ci sono redirezioni particolari.
mi potete dare dei consigli? 

 mi potete dare dei consigli? 
Probabilmente il codice è obsoleto e hanno aggiornato la versione di
php.
E, da come dici, sembra che ci sia un loop da qualche parte.
Posta un pò di codice
Max
-- 
http://www.maxori.it
L'Arte è la capacità di fare cose di nessun valore
e di riuscire a venderle
F. Zappa


intanto grazie
PAGINA index.php
<?php
include 'paginazione.php';
//
$DB_host     = '';
$DB_user     = '';
$DB_password = '';
$DB_name     = '';
$righe_per_pagina = 10;
$url_base = "index.php";
$pagine_vicine = 1;
// ----------------------------------------------------------------
//         C O N N E S S I O N E   A L   D A T A B A S E
$link = mysql_connect($DB_host, $DB_user, $DB_password);
if (!$link) {
    die ('Non riesco a connettermi: ' . mysql_error());
}
$db_selected = mysql_select_db($DB_name, $link);
if (!$db_selected) {
    die ("Errore nella selezione del database: " . mysql_error());
}
// ----------------------------------------------------------------
//    C A L C O L O   D E L   N U M E R O   D I   P A G I N E
// ricavo il numero totale di record
$query = "SELECT COUNT(*) FROM notizie";
$result = mysql_query($query);
// record complessivi
$tot_righe = mysql_result($result,0);
// totale pagine
$tot_pagine = ceil($tot_righe / $righe_per_pagina);
// ----------------------------------------------------------------
//                 P A G I N A   C O R R E N T E
$pagina_corrente = isset($_GET['pag']) ? (int)$_GET['pag'] : 1;
// se la pagina corrente è minore di 1
if($pagina_corrente < 1)  {
    header('location: ' . $url_base);
    exit();
}
// se la pagina corrente è maggiore dell'ultima pagina
if($pagina_corrente > $tot_pagine) {
    header('location: ' . crea_url($url_base, $tot_pagine));
    exit();
}
// ----------------------------------------------------------------
//            E S T R A Z I O N E   D E I   R E C O R D
// calcolo la prima riga da estrarre con la query
$prima_riga = ($pagina_corrente - 1) * $righe_per_pagina;
$query = "SELECT *
          FROM notizie
    ORDER BY indice DESC
          LIMIT $prima_riga, $righe_per_pagina";
$result = mysql_query($query);
if (!$result) {
    die("Errore nella query $query: " . mysql_error());
}
$elenco_notizie = array();
while ($row = mysql_fetch_assoc($result)) {
    $elenco_notizie[] = $row;
}
// creazione dei link di paginazione
$link_paginazione = paginazione($tot_pagine, $url_base, $pagina_corrente, 
$pagine_vicine);
// carico il template HTML
include 'index.htm';
?>
PAGINA paginazione.php
<?php
function crea_url($url_base, $pagina) {
    if(strpos($url_base,'?') === false) {
        return $url_base . '?pag=' . $pagina;
    } else {
        return $url_base . '&amp;pag=' . $pagina;
    }
}
function crea_link($url_base, $pagina_corrente, $numero_pagina) {
    if($pagina_corrente == $numero_pagina) {
        return "[$numero_pagina]";
    } else {
        return '<a href="' . crea_url($url_base, $numero_pagina) . '">' . 
$numero_pagina . '</a>';
    }
}
// funzione che crea i link alle pagine dei risultati
function paginazione($tot_pagine, $url_base, $pagina_corrente, 
$pagine_vicine) {
    $link_paginazione = "Pagine: ";
    // link alla pagina precedente
    if($pagina_corrente != 1) {
        $link_paginazione .= '<a href="' . crea_url($url_base, 
$pagina_corrente - 1) . '">&laquo;</a> ';
    }
    // mostriamo sempre il link alla prima pagina
    $link_paginazione .= crea_link($url_base, $pagina_corrente, 1);
    // se il prossimo link non è alla seconda pagina aggiungo dei puntini 
...
    // oppure la sola pagina mancante
    if($pagina_corrente - $pagine_vicine > 2) {
        if($pagina_corrente - $pagine_vicine == 3) {
            $link_paginazione .= " " . crea_link($url_base, 
$pagina_corrente, 2);
        } else {
            $link_paginazione .= " ... ";
        }
    }
    // creo i link alla pagina corrente ed a quelle ad essa vicine
    for($i = $pagina_corrente - $pagine_vicine; $i <= $pagina_corrente + 
$pagine_vicine; $i++) {
         // se tra quelle vicine c'è la prima pagina (già riportata)
        if($i < 2) continue;
         // se tra quelle vicine c'è l'ultima pagina (che mostrerò con le 
prossime istruzioni)
        if($i > $tot_pagine - 1) continue;
        $link_paginazione .= " " . crea_link($url_base, $pagina_corrente, 
$i);
    }
    // se il precedente link non era alla penultima pagina aggiungo dei 
puntini ...
    // oppure la sola pagina mancante
    if($pagina_corrente + $pagine_vicine < $tot_pagine - 1) {
        if($pagina_corrente + $pagine_vicine == $tot_pagine - 2) {
            $link_paginazione .= " " . crea_link($url_base, 
$pagina_corrente, $tot_pagine - 1) . " ";
        } else {
            $link_paginazione .= " ... ";
        }
    }
    // mostriamo il link all'ultima pagina se questa non coincide con la 
prima
    if($tot_pagine != 1) {
        $link_paginazione .= " " . crea_link($url_base, $pagina_corrente, 
$tot_pagine);
    }
    // link alla pagina successiva
    if($pagina_corrente != $tot_pagine) {
        $link_paginazione .= ' <a href="' . crea_url($url_base, 
$pagina_corrente + 1) . '">&raquo;</a>';
    }
    return $link_paginazione;
}
?>


accidenti, ho risolto il problema. Il db era vuoto ed evidentemente andava 
in loop qualcosa.
Strano però...