Visualizzazione risultati 1 fino 21 di 21

Discussione: Link che riporta alla stessa pagina

  1. #1
    Guest

    Predefinito Link che riporta alla stessa pagina

    Chiedo subito scusa per il titolo, ma non sapevo cosa scriverci esattamente e perciò non ho saputo trovare risposta con la funzione "Cerca". Premetto che il php lo stò imparando adesso e che ancora non sono un asso, perciò chiedo scusa se la domanda è banale. Come si fà a mettere un link che trasporta alla stessa pagina del link ma con qualche modifica?

    Mi spiego meglio: ho una variabile che mi dà il numero 1232 e voglio che liccando su un apposito link venga tolta da questa variante A una variante B preimpostata! Non sò se è possibile!
    Grazie in anticipo!

  2. #2
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Detta in altre parole, ti serve realizzare delle pagine con dei parametri (un po' come questo forum visualizza le discussioni in modo simile, ma differenziando ovviamente i contenuti)?

    Questo è il modo più semplice:
    - i link alla pagina (sia nello stesso script, che in altre pagine) vanno scritti/creati in questo modo:
    Codice HTML:
    <a href="script.php?par=hello">Hello!</a>
    al posto di "hello" va inserito il valore del tuo "parametro"
    - per utilizzare questo parametro nel file script.php, devi usare la sintassi (da utilizzare come le altre variabili)
    Codice PHP:
    $_GET['par']
    il cui valore sarà ovviamente, in questo caso, la stringa "hello".

    Puoi anche sviluppare pagine con due o più parametri, in questo caso:
    - i link vanno scritti nel modo seguente:
    Codice HTML:
    <a href="script.php?par1=val1&par2=val2&par3=val3">Usa val1, val2 e val3</a>
    - il file script.php si troverà con queste tre "variabili" extra:
    Codice PHP:
    $_GET['par1']
    $_GET['par2']
    $_GET['par3']
    Stammi bene...
    Ultima modifica di dementialsite : 01-02-2009 alle ore 12.31.47
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  3. #3
    Guest

    Predefinito

    Ribadisco che devo molto imparare, ma in questo codice dov'è l'errore?


    <php?
    $a = 1234
    $b = 432
    <a href="script.php?par1=val1">Espandi</a>

    $_GET['$a = $a-$b']
    echo "$a"


    ?>

    E' il nome dello stesso script in uso

    Ok, allora io voglio che cliccando su quel link "Espandi" tu possa sottrarre dalla variante A la variante B e che mi torni alla stessa pagina mostrando la variante A modicata!
    Lo spiego se non mi fossi spiegato bene prima!

    EDIT: scusate se ho fatto il doppio post: non me ne ero accorto!
    Ultima modifica di XxxJoKeRsxxX : 02-02-2009 alle ore 07.42.06

  4. #4
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Cavolo... ne hai da imparare... proviamo a vedere se ho capito tutto:
    Codice PHP:
    <?php
    // usiamo le sessioni, visto che dobbiamo trasmettere dati in varie pagine
    session_start();

    // prendi il valore di A che hai in memoria
    $a = $_SESSION['a'];

    // prendi il valore di B che ti viene passato
    $b = $_GET['b'];

    // visualizza il nuovo valore di A
    $a -= $b;
    echo
    $a;

    // memorizza il nuovo valore di A nella sessione
    $_SESSION['a'] = $a;

    // stampa il collegamento per reimpostare di nuovo la variabile
    echo "<a href=\"?b=$b\">Reimposta variabile</a>";
    ?>
    Spero di aver fatto giusto... sono un po' debole con le sessioni :-D

    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  5. #5
    Guest

    Predefinito

    Grazie! Sempre una domanda da inesperto: come faccio a mettere i valori???

  6. #6
    Guest

    Predefinito

    Li puoi passare tramite un array:

    Codice PHP:
    $page = array(
    '0',
    '1',
    '2',
    '3',
    '3',
    '5',
    );

    $num_page = count($page);

    for(
    $count = 0; $count < $num_page; $count++)
    {
    print
    $page[$count];
    }
    Ti stamperà tutto il contenuto dell'array, e poi tramite la variabile GET puoi fare delle condizioni con if/else/elseif che in base al valore passato a GET ti stampa una cosa.

    Altrimenti puoi usare switch():
    Codice PHP:
    switch($_GET['par'])
    {
    case
    1:
    print
    '1';
    break;
    case
    2:
    print
    '2';
    break;
    case
    3:
    print
    '3';
    break;
    case
    4:
    print
    '4';
    break;
    case
    5:
    print
    '5';
    break;
    default:
    print
    'Default';
    }
    Io ho queste consocenze e possibilità

  7. #7
    Guest

    Predefinito

    Scusa, ma ribardisco che non ci capisco molto!!!
    Puoi spiermi cosa devo aggiungere al codice datomi prima da dementialsite e dove aggiungerlo? Grazie mille in anticipo!

  8. #8
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Citazione Originalmente inviato da XxxJoKeRsxxX Visualizza messaggio
    Grazie! Sempre una domanda da inesperto: come faccio a mettere i valori???
    Penso che si riferisse a questo: lo script sopra si preoccupa di aggiornare i valori se questi sono già stabiliti, ma non c'è modo di stabilire quelli iniziali. Prova ad inserire questi codici:
    Codice PHP:
    // questo va al posto della seconda riga del mio script sopra
    if (isset ($_SESSION['a'])) // se la variabile di sessione è impostata...
    $a = $_SESSION['a']; // ... allora usa il suo valore
    else
    $a = ...; // ... altrimenti inserisci qui il valore iniziale

    // -----

    // questo va al posto della terza riga del mio script sopra, il ragionamento è lo stesso...
    if (isset ($_GET['b']))
    $b = $_GET['b'];
    else
    $b = ...; // completa con il valore iniziale
    Infine, se devi offrire la scelta tra due valori, ti basta stampare tutte le volte che ti serve l'ultima riga del codice, sostituendo il riferimento alla variabile $b (non confonderla con ?b) con il valore (numerico) appropriato.

    Ti pregherei di esporre un po' più dettagliatamente i tuoi problemi: è già la seconda volta che "tiro ad indovinare"...

    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  9. #9
    Guest

    Predefinito

    Ma per fare in modo che solo al click su espandi venga visualizzato il numero senza sottrazione???
    Mi spiego meglio: se $a = 245 e $b =12 e io voglio che all'inizio appaia il numero 245 e non 245-12 (233) come appare tuttora!!! Come potrei fare???

    Altra domanda:
    Come posso fare a fare in modo che il numero non scenda sotto zero e quando ci dovrebbe scendere e quindi mostrare l'errore invece non scenda???

    Codice PHP:
    <?php
    // usiamo le sessioni, visto che dobbiamo trasmettere dati in varie pagine
    session_start();

    // questo va al posto della seconda riga del mio script sopra
    if (isset ($_SESSION['a'])) // se la variabile di sessione è impostata...
    $a = $_SESSION['a']; // ... allora usa il suo valore
    else
    $a = 1345; // ... altrimenti inserisci qui il valore iniziale

    // -----

    // questo va al posto della terza riga del mio script sopra, il ragionamento è lo stesso...
    if (isset ($_GET['b']))
    $b = $_GET['b'];
    else
    $b = 135; // completa con il valore iniziale

    // visualizza il nuovo valore di A
    $a -= $b;
    echo
    $a;

    // memorizza il nuovo valore di A nella sessione
    $_SESSION['a'] = $a;

    // stampa il collegamento per reimpostare di nuovo la variabile
    echo "<a href=\"?b=$b\">Espandi</a>";


    if (
    $a < '0') {
    echo
    "<br>Impossibile costruire!<br>";
    echo
    "Non hai abbastanza risorse<br>";
    }




    ?>
    Ultima modifica di XxxJoKeRsxxX : 03-02-2009 alle ore 10.56.32 Motivo: avevo commesso un errore

  10. #10
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Rendendo lo script un po' più macchinoso, puoi aggiungere un altro parametro di "conferma":
    Codice PHP:
    <?php
    session_start
    ();

    if (isset (
    $_SESSION['a']))
    $a = $_SESSION['a'];
    else
    $a = 1345;

    if (isset (
    $_GET['b']))
    $b = $_GET['b'];
    else
    $b = 135;

    if (isset (
    $_GET['confirm']) && $_GET['confirm'] == 'ok')
    {
    if (
    $a >= $b)
    {
    $a -= $b;
    $_SESSION['a'] = $a;
    echo
    "Transazione completata - saldo attuale: $a";
    // inserisci qui un link ad una "pagina di uscita"
    }
    else
    {
    echo
    "Transazione non eseguibile, disponibilità insufficiente";
    // inserisci qui un link ad una "pagina di uscita"
    }
    }
    else
    {
    echo
    "Valore iniziale: $a -- Stai per sottrarre: $b -- confermi?";
    echo
    "<a href=\"?b=$b&confirm=ok\">Sì</a>";
    echo
    "<a href="...">No</a>"; // inserisci una "pagina di uscita" qui
    }
    ?>
    Spero che ora il programma corrisponda alle tue esigenze...

    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  11. #11
    Guest

    Predefinito

    Cosa è una pagina di uscita???

  12. #12
    Guest

    Predefinito

    Nel caso accada un errore/quell'evento ci sia un link per tornare indietro o simili

  13. #13
    Guest

    Predefinito

    e quindi cosa ci devo scrivere???

  14. #14
    Guest

    Predefinito

    Quello lo devi vedere tu

  15. #15
    Guest

    Predefinito

    Ma un link mio???

  16. #16
    L'avatar di seneca
    seneca non è connesso Super Moderatore
    Data registrazione
    18-12-2004
    Residenza
    la Città Eterna
    Messaggi
    8,376

    Predefinito

    E certo. Una pagina in cui dici che è tutto ok o c'è stato un errore o qualsiasi altra cosa, a seconda delle esigenze.


    -- Aut Roma Aut Nihil!

  17. #17
    Guest

    Predefinito

    Scusate, ma non mi fà editare! Non faccio il doppio post volontariamente!

    Volevo dirvi: dove stà l'errore in questo codice?

    Codice PHP:
    <?php
    // usiamo le sessioni, visto che dobbiamo trasmettere dati in varie pagine
    session_start();

    // questo va al posto della seconda riga del mio script sopra
    if (isset ($_SESSION['a'])) // se la variabile di sessione è impostata...
    $a = $_SESSION['a']; // ... allora usa il suo valore
    else
    $a = 1345; // ... altrimenti inserisci qui il valore iniziale

    // -----

    // questo va al posto della terza riga del mio script sopra, il ragionamento è lo stesso...
    if (isset ($_GET['b']))
    $b = $_GET['b'];
    else
    $b = 135; // completa con il valore iniziale

    // visualizza il nuovo valore di A
    $a -= $b;
    echo
    $a;

    // memorizza il nuovo valore di A nella sessione
    $_SESSION['a'] = $a;

    // stampa il collegamento per reimpostare di nuovo la variabile
    echo "<a href=\"?b=$b\">Espandi</a>";



    echo
    "<br>Per costruire spenderai:";
    echo
    $b;


    if (
    $a < '0') {
    echo
    "<br>Impossibile costruire!<br>";
    echo
    "Non hai abbastanza risorse<br>";
    $a += $b}




    ?>

  18. #18
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Domanda #1: qual è l'errore che ti viene riportato o il funzionamento imprevisto?

    Domanda #2: come mai dopo tutti i tentativi per spiegare quello che intendevi fare sei praticamente tornato alla versione precedente del codice?

    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  19. #19
    Guest

    Predefinito

    Ho trovato da solo ciò che volevo: in fondo è un pò diverso il codice se ci fai caso!!!

    Comunque visualizza questo messaggio:

    Parse error: syntax error, unexpected '}' in /membri/xxxjokersxxx/file2.php on line 38

  20. #20
    Guest

    Predefinito

    MAnca un punto e virgola dopo $b:

    $a += $b;}


    Ciao!

  21. #21
    Guest

    Predefinito

    Grazie mille!

Regole di scrittura

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