Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    176

    Codice funzionante solo su internet e non in locale

    Ciao a tutti!
    Devo prima di tutto ringraziare colore che mi stanno aiutando in questi giorni!
    Ho un quesito che vorrei porvi?
    Come mai un codice funziona correttamente su internet ma non in locale? Bisogna agire sul Php.ini? E' solo questo il file che differenzia l'ambiente locale da quello pubblico?

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    un miliardo di fattori diversi: percorsi sbagliati, diversa configurazione di php, diversa versione di php, diversa piattaforma su cui php gira....
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    176
    Mmmm, e ora come faccio?.. Il codice in questione è quello che permette di scorrere degli articoli un numero tot alla volta.. L'ho preso dal questo sito e modificato poco poco..

    Codice PHP:
    <?
    //includo dati per connessione al database
    include("config.inc.php");
    //connessione al database
    $connessione mysql_connect($db_host$db_user$db_password);
    if (
    $connessione == FALSE)
    die (
    "Errore nella connessione. Verificare i parametri nel file config.inc.php");
    //connessione alla tabella del database
    mysql_select_db($db_name$connessione)
    or die (
    "Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
    if (!isset(
    $start) OR $start<0)
    $start=0;
    $step 15;
    $query "SELECT id,data,titolo,immagine FROM miodb ORDER BY id DESC LIMIT $start,$step";
    $result mysql_query($query$connessione);
    while(
    $row mysql_fetch_array($result))
    {

    echo 
    "<div class=\"height48 colonna226 floatleft\">
          <h3 class=\"left\"><span class=\"grassetto rosso\">"
    date("d/m/Y"$row['data']) . "</span><span class=\"grigio\"> - "date("H:i"$row['data']) . "</span></h3>";
    echo 
    "<h3 class=\"left\"><a href=\"news.php?id={$row['id']}\">{$row['titolo']}</a></h3></div>";
    echo 
    "<div class=\"height48 colonna50 floatleft\">{$row['immagine']}</div>";
    echo 
    "<div class=\"clearboth\"><hr /></div>";
    }
    ?>

    <?
    if ($start>0)
    $start_back $start $step;
    echo 
    "<h3><a href=archivio_news.php?start=$start_back>precedenti</a></h3>";
    }
    ?>
    <?
    $query 
    "SELECT count(*) AS tot FROM miodb";
    $result mysql_query($query$connessione);
    $row mysql_fetch_array($result);
    $pages intval(($row[tot]-1) / $step)+1;
    ?>

    <?
    for ($i=0$i<$pages AND $i<15$i++)
    $start_page $i $step;
    echo 
    "<a href=archivio_news.php?start=$start_page>" . ($i+1) . "</a> ";
    }
    ?>

    <?
    if ($start $step $row[tot])
    $start_next $start $step;
    echo 
    "<h3><a href=archivio_news.php?start=$start_next>successivi</a></h3>";
    }
    ?>


    <?
    echo "<h3><a href=search.php>cerca nelle news</a></h3>";
    ?>
    Mentre funziona su internet non funziona in locale.
    se clicco sulle pagine "successive" il link nell'url cambia correttamente ma la pagina viene visualizzata alla stesso modo pur presentando la voce "archivio_news.php?start=15"
    Non capisco proprio! Forse il codice non è proprio il massimo..

  4. #4
    Il codice è funzionante per una versione di php con register_globals su ON, cosa che comunque è sconsigliata
    Trasforma tutte le variabili $start ed $step rispettivamente in $_GET['start'] ed $_GET['step']

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    176
    Originariamente inviato da cubalibre810
    Trasforma tutte le variabili $start ed $step rispettivamente in $_GET['start'] ed $_GET['step']
    Grazie per l'aiuto!
    Ho fatto come mi hai detto ma ho un errore qui:
    Codice PHP:
    //è la linea 14
    $query "SELECT id,data,titolo,immagine FROM miodb ORDER BY id DESC LIMIT $start,$step"
    Che io ho scritto così:
    Codice PHP:
    //è la linea 14
    $query "SELECT id,data,titolo,immagine FROM gsdd_news ORDER BY id DESC LIMIT $_GET['start'], $_GET['step']"
    L'errore che ricevo è:
    Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in E:\Internet\Dangelabs_webtest\gsdd\elenco_news.php on line 14
    Sicuramente sarà una stupidata ma non riesco a capire dove è sbagliato!
    Grazie ancora comunque!

  6. #6
    No, fai così, lascia come era prima, ed all'inizio metti
    $start = (int)$_GET['start'];

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    176
    Grande, sei stato davvero gentile!
    Ora funziona perfettamente!

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    176
    Già che ci sono provo a chiedervi ancora una cosa..
    ora la pagina funziona perfettamente sia in locale che in rete; sul fondo di essa compaiono i numeri delle pagine successive e chiccando sul numero "2" vado ovviamente alla pagina che comprende gli articoli dal 16 al 30 e così via.
    Vorrei però che il numero della pagina venisse in qualche modo evidenziato (magari in grassetto) per far capire chi naviga dove si trova.
    Per essere più chiaro mi piacerebbe una cosa del genere:
    1 2 3 4
    E possibile?
    Grazie ancora!

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    176
    Sono di nuovo qui..
    ho scoperto di avere ancora delle pagine con del codice non funzionante in locale (le ho prese dalla guida pratica di questo portale).

    Il codice è questo:
    Codice PHP:
    <?
    //includo dati per connessione al database
    include("config.inc.php");
    //connessione al database
    $connessione mysql_connect($db_host$db_user$db_password);
    if (
    $connessione == FALSE)
    die (
    "Errore nella connessione. Verificare i parametri nel file config.inc.php");
    //connessione alla tabella del database
    mysql_select_db($db_name$connessione)
    or die (
    "Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
    $keys explode (","$chiave);
    $query "";
    reset ($keys);
    while (list(,
    $parola) = each ($keys))
    $parola trim($parola);
    if (
    $parola != "")
    $query .= "titolo LIKE '%$parola%' OR testo LIKE '%$parola%' OR autore LIKE '%$parola%' OR ";
    }
    $query .= "0";
    $query "SELECT id, titolo, testo, data FROM gsdd_news WHERE " $query;
    $result mysql_query($query$connessione);
    echo 
    "<h3 class=\"bianco\">Elenco dei risultati per il termine \"<span class=\"rosso\">$chiave</span>\":</h3>
    "
    ;
    while(
    $row mysql_fetch_array($result))
    {
    echo 
    "<h2>"date("d/m/Y"$row['data']) . "</h2>";
    echo 
    "<h3><a href=\"news.php?id={$row['id']}\">{$row['titolo']}</a></h3>
    "
    ;
    }
    echo 
    "<hr />";
    echo 
    "<h3><a href=search.php>nuova ricerca</a></h3>";
    echo 
    "<h3><a href=archivio_news.php>torna all'archivio news</a></h3>";
    ?>
    E' la pagina che dà i risultati di una ricerca nel db.
    Penso che ci sia da fare la trasformazione in $_GET[] ma non riesco a capire bene dove toccare..
    Grazie in anticipo!

  10. #10
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    176
    up

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.