Visualizzazione risultati 1 fino 15 di 15

Discussione: target="_blank" da errore php

  1. #1
    Guest

    Predefinito target="_blank" da errore php

    Non riesco a risolvere questo errore, se inserisco l'url tutto bene, se invece il campo è vuoto c'è errore

    Codice PHP:
    //Se la stringa è 19 caratteri o più (con lo spazio interno), viene accorciata a 15 e mette i 3 puntini, TOT a video 18
    if (strlen($riga['url']) >= 19) {
    $riga['url']=substr($riga['url'],0,15)."...";
    }elseif(
    $riga['url'] == "") {
    $riga['url'] = "<span style=\"color:#a8a8a8; text-shadow:0px 1px 0px white;\">-</span>";
    }
    echo
    "<div class=\"site\"><span class=\"voci2\">Sito:</span><a class=\"carattere-2\" href=\"".$riga['url']."\" target=\"_blank\">".$riga['url']."</a></div>";
    Errore


    Ultima modifica di gruppoalveo : 24-01-2013 alle ore 23.12.14

  2. #2
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,260

    Predefinito

    Perché soffrire così con le virgolette? Quando non ci sono variabili all'interno della stringa, usate gli apici singoli. E' anche codice più veloce, perché il php non deve controllare la presenza di variabili.

    Codice PHP:
    echo '<div class="site"><span class="voci2">Sito:</span><a class="carattere-2" href="' . $riga['url'] . '" target="_blank">' . $riga['url'] . '</a></div>';
    Per l'errore, qual è il messaggio? quello screenshot sotto da dove arriva?

  3. #3
    Guest

    Predefinito

    Citazione Originalmente inviato da dreadnaut Visualizza messaggio
    Perché soffrire così con le virgolette? Quando non ci sono variabili all'interno della stringa, usate gli apici singoli. E' anche codice più veloce, perché il php non deve controllare la presenza di variabili.

    Codice PHP:
    echo '<div class="site"><span class="voci2">Sito:</span><a class="carattere-2" href="' . $riga['url'] . '" target="_blank">' . $riga['url'] . '</a></div>';
    Per l'errore, qual è il messaggio? quello screenshot sotto da dove arriva?
    Lo screen shot è quello del mio guestbook...il tuo codice mi da lo stesso errore

  4. #4
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,260

    Predefinito

    Di cui mi sognerò l'url questa notte, spero, così ti posso rispondere domattina

  5. #5
    Guest

    Predefinito

    Citazione Originalmente inviato da dreadnaut Visualizza messaggio
    Di cui mi sognerò l'url questa notte, spero, così ti posso rispondere domattina

    E' un campo del form non obbligatorio

  6. #6
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,260

    Predefinito

    Comunque, il codice che ho scritto io non doveva essere più corretto, è solo più comodo quando ci sono tante virgolette. L'errore non so quale sia, e ancora non so dove andare a vedere questo guestbook

    Tu guarda il sorgente della pagina e controlla che non ci siano apici di troppo. Se ottieni quel testo al posto del link probabilmente ti sei dimenticato di chiuderne una coppia.

  7. #7
    Guest

    Predefinito

    Citazione Originalmente inviato da dreadnaut Visualizza messaggio
    Comunque, il codice che ho scritto io non doveva essere più corretto, è solo più comodo quando ci sono tante virgolette. L'errore non so quale sia, e ancora non so dove andare a vedere questo guestbook

    Tu guarda il sorgente della pagina e controlla che non ci siano apici di troppo. Se ottieni quel testo al posto del link probabilmente ti sei dimenticato di chiuderne una coppia.
    Guestbook

  8. #8
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,260

    Predefinito

    Nel codice c'è questo, e Firefox lo evidenzia persino in rosso per te.
    Codice HTML:
    <span class="voci2">Sito:</span><a class="carattere-2" href="<span style="color:#a8a8a8; text-shadow:0px 1px 0px white;">-</span>" target="_blank">
    Apri un tag <span> dentro l'attributo href= del link precedente. L'errore non è nelle righe postate da te, ma prima.

    E questo lo scoprivi cliccando tasto destro \ visualizza sorgente

  9. #9
    Guest

    Predefinito

    Citazione Originalmente inviato da dreadnaut Visualizza messaggio
    Nel codice c'è questo, e Firefox lo evidenzia persino in rosso per te.
    Codice HTML:
    <span class="voci2">Sito:</span><a class="carattere-2" href="<span style="color:#a8a8a8; text-shadow:0px 1px 0px white;">-</span>" target="_blank">
    Apri un tag <span> dentro l'attributo href= del link precedente. L'errore non è nelle righe postate da te, ma prima.

    E questo lo scoprivi cliccando tasto destro \ visualizza sorgente
    Così si vede, ma come faccio a far quadrare il tutto?

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

    Predefinito

    A occhio dovresti separare il testo del collegamento dall'indirizzo quindi anziché cambiare il valore della variabile $riga['url'], metti il testo del collegamento in una variabile a parte.

  11. #11
    Guest

    Predefinito

    Citazione Originalmente inviato da karl94 Visualizza messaggio
    A occhio dovresti separare il testo del collegamento dall'indirizzo quindi anziché cambiare il valore della variabile $riga['url'], metti il testo del collegamento in una variabile a parte.
    Ho sostituito con un echo il codice della barretta e va meglio ma non è ancora giusto

    Codice PHP:
    //Se la stringa è 19 caratteri o più (con lo spazio interno), viene accorciata a 15 e mette i 3 puntini, TOT a video 18
    if (strlen($riga['url']) >= 19) {
    $riga['url']=substr($riga['url'],0,15)."...";
    }elseif(
    $riga['url'] == "") {
    echo
    "<span style=\"color:#a8a8a8; text-shadow:0px 1px 0px white;\">-</span>";
    }
    echo
    "<div class=\"site\"><span class=\"voci2\">Sito:</span><a class=\"carattere-2\" href=\"".$riga['url']."\" target=\"_blank\">".$riga['url']."</a></div>";

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

    Predefinito

    A questo punto fai così: sposta l'echo del tag di apertura prima dell'if, negli if ci stampi il contenuto (dovrai quindi aggiungere un else in cui stampare la solita variabile senza però modificarla) e fuori ci metti il tag di chiusura. E magari cerca anche di applicare quanto consigliato da Dreadnaut.

  13. #13
    Guest

    Predefinito

    Citazione Originalmente inviato da karl94 Visualizza messaggio
    A questo punto fai così: sposta l'echo del tag di apertura prima dell'if, negli if ci stampi il contenuto (dovrai quindi aggiungere un else in cui stampare la solita variabile senza però modificarla) e fuori ci metti il tag di chiusura. E magari cerca anche di applicare quanto consigliato da Dreadnaut.
    Ora sembra a posto ma c'è un piccolo particolare: quando clicc o sull'url di un sito nel campo, si apre la pagina del mio sito

    Codice PHP:
    $riga['url'] = str_replace("www.","http://",$riga['url']);
    $riga['url'] = str_replace("http://http://","http://",$riga['url']);
    $riga['url'] = str_replace("http://www.","http://",$riga['url']);

    $riga['url1']="";
    //Se la stringa è 19 caratteri o più (con lo spazio interno), viene accorciata a 15 e mette i 3 puntini, TOT a video 18
    if (strlen($riga['url']) >= 19) {
    $riga['url']=substr($riga['url'],0,15)."...";
    }elseif(
    $riga['url'] == "") {
    $riga['url']= "<span style=\"color:#a8a8a8; text-shadow:0px 1px 0px white;\">-</span>";
    }
    echo
    "<div class=\"site\"><span class=\"voci2\">Sito:</span><a class=\"carattere-2\" href=\"".$riga['url1']."\" target=\"_blank\">".$riga['url']."</a></div>";

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

    Predefinito

    È normale se l'attributo href lo lasci vuoto... Comunque tutto questo lavoro (accorciare stringhe troppo lunghe perché non ci stanno) sarebbe meglio lasciarlo al CSS.
    Ultima modifica di karl94 : 25-01-2013 alle ore 00.33.24

  15. #15
    Guest

    Predefinito

    Citazione Originalmente inviato da karl94 Visualizza messaggio
    È normale se l'attributo href lo lasci vuoto... Comunque tutto questo lavoro (accorciare stringhe troppo lunghe perché non ci stanno) sarebbe meglio lasciarlo al CSS.
    Ho modificato la variabile, ora sembra corretto

    Codice PHP:
    $riga['url1']="".$riga['url']."";

Regole di scrittura

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