Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Location

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929

    Location

    ciao a tutti,

    come posso sostituire il valore di una variabile Get lasciando alterato tutto cio che c'è nella location?

    esempio
    file.php?lng=it&id=1&id_art=1

    voglio dare questa location in pasto ad una funzione in modo che venga sostituito solo il valore di lng con il valore di $lingua
    Codice PHP:
    function location_ ($lingua){
    // prendo la location
    $attuale $_SERVER['QUERY_STRING'];
        if(
    $attuale != ''){
            
    // qui dovrei effettuare il cambio
            
    $loc $attuale;
        }else{
            
    $loc "?lng=$lingua";
        }
    return 
    $loc;

    ho iniziato a scrivere ma non ho in mente una soluzione

    Grazie mille

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    non credo mi possa servire, presuppone che io sappia quali siano le variabili


  4. #4
    Usa http://www.php.net/preg_replace ed una espressione regolare.
    Se preg_replace restituisce los tesso valore in ingresso allora saprai che quell'elemento non c'era e potrai accodarlo come nella condizione else del tuo script.

  5. #5
    Con la split()?

    $array = split("?", $stringa);

    $array2 = split("&",$array[1]);

    in questo modo ti trovi tutte le variabili in get (var1=1, var2=2 ecc...)

    poi con gli array puoi ricostruirti la location.

    Fammi sapere
    Ciao
    Mirko Agrati
    WEB : http://mirkoagrati.110mb.com
    RSS : http://feeds.feedburner.com/MirkoAgratiArticoli

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    eccola!!! bravo weppos


    Codice PHP:
    function location_ ($lingua){
    // prendo la location
    $attuale $_SERVER['QUERY_STRING'];
        if(
    $attuale != ''){
            
    $val $_GET['lng'];
            
    $pattern =    "/$val/";
            
    $cambio preg_replace($pattern$lingua$attuale);
            
    $loc "?$cambio";
        }else{
            
    $loc "?lng=$lingua";
        }
    return 
    $loc;

    grazie a tutti

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 © 2024 vBulletin Solutions, Inc. All rights reserved.