Visualizzazione risultati 1 fino 7 di 7

Discussione: Passaggio variabili

  1. #1
    Vaidrago non è connesso Neofita
    Data registrazione
    02-08-2005
    Messaggi
    3

    Predefinito Passaggio variabili

    Ciao a tutti ho un problema con un sito che ha sempre funzionato.

    ho un semplice passaggio di una variabile da link che poi però non viene più riconosciuta nella pagina di risposta cosa può essere successo?

    tipo io passo ......altervista.org/index.php?id=12 la pagina di risposta non fa più niente come se non gli passassi niente e io non ho modificato nulla.

  2. #2
    mzanella non è connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,954

    Predefinito

    Mostra le parti rilevanti del codice della pagina in questione.

  3. #3
    karl94 non è connesso Staff AV
    Data registrazione
    03-10-2005
    Messaggi
    17,744

    Predefinito

    Leggi http://forum.it.altervista.org/php-m...ml#post1284620, probabilmente è il medesimo problema.

  4. #4
    Vaidrago non è connesso Neofita
    Data registrazione
    02-08-2005
    Messaggi
    3

    Predefinito

    Unica cosa effettuata in questi giorni è aver attivato Database di altervista per provare a utilizzare SQL ma prove su una sottocartella del sito

    Il sito in questione è molto semplice passo un link con una variabile se la variabile c'è faccio vedere un dettaglio altrimenti faccio vedere una lista ma senza database

  5. #5
    karl94 non è connesso Staff AV
    Data registrazione
    03-10-2005
    Messaggi
    17,744

    Predefinito

    Hai provato a leggere il messaggio che ti ho indicato?

  6. #6
    Vaidrago non è connesso Neofita
    Data registrazione
    02-08-2005
    Messaggi
    3

    Predefinito

    <?
    if ( isset($var) ) // se la variabile esiste (restituisce true)
    if (file_exists("img/big/".$var.".jpg"))
    {
    $a = $var-1;
    $b = $var+1;
    if ($ext == "")
    {$c= "";}
    else
    {$c= substr($var, -1, 1);}

    print("<div class='indietro'><a href="index.php?var=".$a.$c."&ext=".$c.""><IMG SRC='img/menu/indietro.gif' width='169' height='59' border='0'></a></div>");
    print("<div class='fotobig'><a href='javascript:history.back()'><img src="img/big/".$var.".jpg" border='0'></a></div>");
    print("<div class='avanti'><a href="index.php?var=".$b.$c."&ext=".$c.""><IMG SRC='img/menu/avanti.gif' width='169' height='59' border='0'></a></div>");
    }
    else
    {
    print("<a href='javascript:history.back()'>No foto</a>");
    }
    else // se non esiste (restituisce false)
    for( $i= 300 ; $i > 1 ; $i-- )
    //for( $i= 1 ; $i <= 500 ; $i++ ) sort al contrario
    {
    if (file_exists("img/small/".$i.$ext.".jpg"))
    print("<div class='foto'><A HREF='index.php?var=".$i.$ext."&ext=".$ext."'><IMG SRC='img/small/".$i.$ext.".jpg' border='0'></a></div>");
    }
    ?>

  7. #7
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    Ciao, quando devi postare codice php potresti postarlo dentro [PHP]<?php
    // commento php su singola linea
    ?>[/PHP] Quando si omette la parentesi graffa in una if sta ad indicare che se è vero faccio solo una riga di codice, mentre se è vero o no eseguo tutto il resto del codice. Tornando in tema, Se tu nel tuo sito hai sempre http://www.sito.it/index.php?var=10&ext= e non hai attivo register_globals (se è su on è un rischio per la tua sicurezza) l'unico modo per recuperare tale valore è con $_GET['var'] (diventa $var automaticamente con register_globals su on); dove prima va verificato se esiste con isset();
    prova unendo l'if
    Codice PHP:
    if (isset($_GET['var'],$_GET['ext']) And file_exists('img/big/'.$var.'.jpg'))
    {
    //Se esiste $_GET['var'] e $_GET['ext']
    // e esiste il file allora è vero
    if(($var=(int)$_GET['var']) >= 2 And $var < 214748364)
    {
    // converto da stringa a un intero positivo
    // controllo se è maggiore uguale a due
    // se è minore a 214748364
    $a = $var-1;
    $b = $var+1;
    if((
    $ext= $_GET['ext']) == '')
    {
    $c= '';}
    else
    // recupero l'ultimo numero
    // converto da stringa ad intero
    // equivalente al secondo codice
    {$c = (int) $var[strlen($var)-1];}
    //{$c= (int) substr($var, -1, 1);}
    echo $var;
    // altro codice
    } else {
    echo
    'non consentito';
    }
    } else {
    // altro codice
    }
    ?>
    Non ho verificato il resto del tuo codice
    EDIT: La creazione di $var manca di logica, il massimo valore di un intero positivo su un sistema a 32 bit è 2147483647. Questo è il limite massimo di $var.
    Ultima modifica di darbula : 19-03-2016 alle ore 04.24.30

Regole di scrittura

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