• User

    Assegnare a variabile php una variabile js

    Ciao a tutti! Il mio problema è il seguente: devo assegnare ad una variabile php una variabile javascript.
    Vi posto il codice, in modo da spiegarmi meglio.
    [php]
    //nell'header
    function visualizza(j) {
    <?php echo $txt = "document.write(j);"; $link = $txt; ?>
    }
    //nell'body
    <?php
    for($j=1;$j<=5;$j++){
    echo "<area shape="rect" coords="$coords" href="#"
    onClick='visualizza($j)'>";
    }
    ?>
    [/php]
    Il problema è che con il codice $txt = "document.write(j);"; non si assegna la variabile javascript alla variabile php e infatti il risultato è che quando clicco sull'area della mappa interessata mi apre una pagina vuota con il numero dell'area cliccata.
    Il risultato che voglio invece è che questo numero viene assegnato alla variabile $link in modo che io possa usarlo.

    Aiutatemi!!!
    Grazie 🙂


  • ModSenior

    Ciao Draxent,

    Non puoi dare un valore ad una variabile lato server in quel modo...
    Dovresti piuttosto fare una chiamata al file php passando il valore come variabile GET.


  • User

    Il problema è che per motivi che ora non ti sto a spiegare mi è impossibile fare l'invio dei dati attraverso il metodo GET e non so come inviare i dati attraverso POST con il javascript... infatti forse potrei risolvere chiamando due funzioni
    [php]
    <?php
    for($j=1;$j<=5;$j++){
    echo "<area shape="rect" coords="$coords" href="#"
    onClick='visualizza($j)' onClick='submit()'>";
    }
    ?> [/php]
    Ma non so cosa deve contenere la funzione submit e non so neanchè se è corretto chiamare le due funzioni in questo modo.

    ps: la funzione visualizza non contiene solo il testo scritto sopra... quindi non la posso eliminare ma la devo chiamare per forza attraverso l'onClick.


  • ModSenior

    Fallo in ajax, è l'unica soluzione.


  • User

    Purtroppo non conosco ajax... e non ho tempo di imparare un nuovo linguaggio di programmazione per risolvere il mio problema.
    Non esiste un altro modo?