Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 24
  1. #1

    Rimpiazzare un lungo url mediante php url encode

    Supponiamo di avere il seguente codice...
    codice:
    <a
    codice:
     href="http://google.com/?id=100&month=june&day=thursday">
    E di volerlo trasformare in...
    codice:
    <a href="
    codice:
    <?php echo urlencode($daniele)?>&day=thursday">
    Così decido di inserire all'interno dell'header...
    codice:
    <?
    codice:
     php $alex ='http://google.com/?id=100&month=june'; ?>

    Teoricamente ciò dovrebbe fungere, dico bene?
    Ma mi riporta errore.
    Dove sbaglio?
    ( es. qui: https://jsbin.com/vazevejasa/edit?html,js,output )
    Ultima modifica di danielepalmas88; 01-06-2017 a 18:04

  2. #2
    Guarda a cosa serve la funziona urlencode:
    http://php.net/manual/en/function.urlencode.php

    quale è lo scopo di quello che vuoi fare?

    se vuoi solo rendere più leggibile l'url

    esempio:

    da http://esempio.com/?id=100&month=june&day=thursday
    a http://esempio.com/show/100/filer/june/thursday

    allora il discorso è diverso.

  3. #3
    Sto costruendo uno script enorme con una marea di variabili. Si basa su lingua, browser, device ecc. E ad ogni condizione corrisponde un window.open di url molto lungo.

    Poiché tale url ha una base comune a tutte le possibilità, l'unico pezzetto che cambia è il finale (che nell'esempio qui sopra ho indicato con &day=thursday)

    Per questo vorrei rendere lo script meno chilometrico, utilizzando un urlencode al quale aggiungere &day=x a seconda della variabile.

    (P.S. Nell'esempio su ho fatto un casino semplificando il codice su cui lavoravo per rendervelo più basilare da capire e quindi più facile aiutarmi: in realtà ho prima codificato l'url col nome $daniele per poi richiarmarlo con l'echo $alex, ma ovviamente avrei dovuto richiarmarlo con $daniele stesso. Ora non posso più editarlo perché è trascorso troppo tempo.)
    Ultima modifica di danielepalmas88; 01-06-2017 a 19:03

  4. #4
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,367
    Non mi sembra che urlencode faccia quello che vuoi

    Puoi usare della variabili :
    Codice PHP:
    $valore1 '123';
    $valore2 'aaa'
    $urlSAV  "www.mio_sito/pippo.php?param1=|valore1|&param2=|valore2|";
    $url     str_replace(array('|valore1|','|valore2|'),array($valore1,$valore2),$urlSAV);
    print 
    "<a href='$url'>link</a>"


    Se hai un solo valore che varia.
    Codice PHP:
    $url     str_replace('|valore1|'),$valore1,$urlSAV); 
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  5. #5
    Scusa ma perche non salvi i dati che passi in sessione invece di mandarli tra una pagina e l'altra come query string dell'url?
    accodi all'url solamente il dato che cambia.

  6. #6
    Grazie per la dritta @badaze, sto studiando se valga la pena utilizzare questo metodo o meno (che probabilmente è fin troppo complesso per quello che in realtà serve me).

    @bauleviaggiante in concreto (in codice) cosa intendi? Ho solo bisogno di trasformare un lungo url predefinito in un qualcosa di molto corto [potrei ad esempio racchiuderlo in un bit.ly short url per farti capire meglio, ma in questo caso non posso, perché la variabile &day=x non attaccherebbe - bit.ly/fshjgfhj&day=thursday non fungerebbe, ovviamente]

  7. #7
    Premesso che ho già definito delle variabili...quindi ecco più nel concreto cosa vorrei fare...

    codice:
    <? php $url  = "www.mio_sito/pippo.php?giorno="; ?>
    
    <script>function ApriUrl() {
    
    if ((italian || french || german) && (!android && !blackberry && !iphone))
    
    { window.open('<?php echo $url ?>'+(
    
    (italian && 'giovedi') || (french && 'venerdi') || (german && 'sabato') ));}
    
    else if ((italian || french || german) && (android || blackberry || iphone))
    
    { window.open('<?php echo $url ?>'+(
    
    (italian && 'domenica') || (french && 'lunedi') || (german && 'martedi') ));}
    
    else if ((!italian && !french && !german) && (android || blackberry || iphone))
    
    {window.open('<?php echo $url ?>mercoledi');}
    
    else {window.open('<?php echo $url ?>giornogenerico');}
    }</script>
    Ok in questo caso non sto racchiudendo i giorni della settimana in ulteriori variabili, ma mi preme soprattutto eseguire il mio intento principale, ovvero racchiudere quell'url lunghissimo di cui parlo, in una sola parola $url

  8. #8
    Quote Originariamente inviata da danielepalmas88 Visualizza il messaggio
    @bauleviaggiante in concreto (in codice) cosa intendi? Ho solo bisogno di trasformare un lungo url predefinito in un qualcosa di molto corto [potrei ad esempio racchiuderlo in un bit.ly short url per farti capire meglio, ma in questo caso non posso, perché la variabile &day=x non attaccherebbe - bit.ly/fshjgfhj&day=thursday non fungerebbe, ovviamente]
    Intendo dire che se quello che stai cercando di accorciare riamane sempre uguale inveche che passarlo tra una pagina e l'altra lo conservi lato server con la sessione.

    da dove derivano i dati che passi con questo url?

  9. #9
    Derivano da custom fields in un blog wordpress. Ogni post ha un sacco di custom fields. Tali dati li richiamo nel lungo link di cui parlo.

    codice:
    http://sitodestinazione.com/?valore1=<?php echo get_post_meta($post->ID, 'valore1', true); ?>&valore2=<?php echo get_post_meta($post->ID, 'valore2', true); ?>&valore2=ecc...
    Nello script enorme che sto costruendo, tutta questa parte iniziale di url che ho accennato poco sopra, è comune a tutte le possibilità, fino a quando, appunto, devo arrivare al valore12 (supposto in giorni della settimana negli esempi di sopra) che però devo imettere di mio, non avendo esso nulla a che vedere con i meta dati dei post.

    Per questo mi serve un metodo per racchiudere gran parte di tale url in una sola parola $url

  10. #10
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,367
    Enorme quanto ?
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

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