Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    777

    [PHP]gestire url della pagina

    salve a tutti, questo è il codice in questione
    Codice PHP:
    $protocol"http://";
    $hosthttp$_SERVER['HTTP_HOST'];
    $uri $_SERVER['REQUEST_URI'];
    $path$protocol.$hosthttp;
    $pathtot$path.$uri;

    function 
    elimina($st){
    $erase="&".$st."=".$_GET[$st];
    $risultatostr_replace($erase ""$pathtot);
    return 
    $risultato;
    }

    echo 
    elimina(idrisp); 
    allora le prime righe fino a $pathtot mi permettono di prelevare l'url della pagina con eventuali valori get. esempio: http:blabla.it/pagina.php?art=2&idrisp=2
    devo creare un link senza idrisp e ho bisogno di avere tutto tranne idrisp=2 e ho pensato di affidarmi a una funzione visto che questa operazione devo operarla su più parti.
    la funzione è elimina().
    nella prova che ho fatto non ho il ritorno di $risultato,come se str_replace non funzionasse.
    se metto invece di $pathtot una cosa del tipo "skkak&idrisp=2", la funzione funziona benissimo.
    dove l'inghippo?

    secondo voi ci sono strategie migliori per ritornare al link senza il valore get?

  2. #2
    mmm senza fare alcuna prova noto che il parametro che passi alla funzione elimina non ha virgolette..quel parametro è una stringa e dovresti passarlo tramite virgolette..stessa cosa alla $_GET nella funzione..dovrebbe essere $_GET["'" . $st . "'"]..prova un pò
    klamis.it Il primo socialnetwork per chi ama le figurine

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    777
    uhm ho un punto che precedete il get lo devo togliere?
    $erase= bla bla. $_GEt
    perchè non credo vada. lo so che servono gli apici all'interno di get però funziona senza. con gli apici mi da errore. come si deve scrivere?

  4. #4
    La riga $erase="&".$st."=".$_GET[$st]; sembra sintatticamente corretta..hai provato a passare il parametro alla funzione elimina con le virgolette?

    codice:
    elimina("idrisp");
    funziona?
    klamis.it Il primo socialnetwork per chi ama le figurine

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    777
    il problema a mio avviso e nel str_replace perchè se io scrivo qualunque cosa compresa la parte da eliminare funziona
    ho provato a mettere $pathtot tra virgolette e niente... mah

  6. #6
    scusa puoi fare un echo della variabile $erase dopo averla valorizzata?
    klamis.it Il primo socialnetwork per chi ama le figurine

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    777
    ho fatto
    return $erase per vedere cosa mi dà e funziona bene
    ora sto in questa situazione
    Codice PHP:
    function elimina($st){

    $erase="&".$st."=".$_GET[$st];
    $risultatostr_replace($erase ""$pathtot);
    return 
    $risultato;
    }

    echo 
    elimina(idrisp); 

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    777
    se io faccio tutto senza funzione
    è tutto funzionante
    cioè se scrivo:
    Codice PHP:
    $st="idrisp";
    $erase="&".$st."=".$_GET[$st];
    $risultatostr_replace("$erase"""$pathtot");
    echo 
    $risultato
    senza la funzione
    mi funziona tutto bene

  9. #9
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    777
    ah chiedo scusa
    ho semplificato ulteriormente e ho risolto cosi
    Codice PHP:
    function elimina($st,$url){
    $erase="&".$st."=".$_GET[$st];
    return 
    str_replace($erase""$url);
    }
    echo 
    elimina(idrisp,$pathtot); 

  10. #10
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    777
    il get senza apici quando si tratta di una stringa va bene?

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.