- Home
- Categorie
- Coding e Sistemistica
- Javascript & Framework
- Passaggio valore variabile da js a php
-
Ciao gato_lopez,
puoi creare un input hidden con name="link_js" in cui la funzione valori inserisce il testo elaborato.
In pratica quando si clicca il pulsante, grazie all'onsubmit viene chiamata la funzione valori che riempie il campo hidden con il valore elaborato.
-
Puoi fare in questo modo nel onsubmit assegni all'input link il valore della tua variabile link_js.
Cmq devo dirti che la textarea, tu usi un'input, nei vari editor WYSWYG viene passata alla pagina PHP xche è contenuta nel form.
Forse ti basterre cambiare il tuo input link cm un textarea link_js.
-
Ho preso un editor im rete, che ha le sue funzioni già pronte, sono riuscito a capire in quale variabile mi mette il risultato del testo formattato. Diciamo che il suo nome è link_js. In realta la form in php che riceve il testo è un iframe.
[LEFT]<iframe class="Composition" width="100%" id="Composition" height="190">[/LEFT]
</iframe>lo script fa tutte le modifiche del caso, ma questo maledetto editor non ha il pulsante invio ne la ricezione del testo formattato. Io cosa ho fatto?
Ho aggiunto la funzione "valori()" nello script, il tasto invia e richiamo la funzione nella <form> con onsubmit. Funziona tutto, riesco anche a vedere il testo formattato con un alert, mi manca solo che questa link_js dallo script torni alla form. Volete che vi posto il vero codice di php e js?
-
allora prova cm detto da ayrton2001
-
quindi l'onsubmit va messo nell'hidden così:
<input type="hidden" name="link_ja">
<input type="submit" onsubmit="valori()" value="INVIA">e nella funzione valori(), è l'istruzione che mi manca?
-
onsubmit è un evento del tag <form>, ma il form è nell'iframe? Devi solo aggiungere un input all'interno del form. L'evento onsubmit ti permette di restituire l'esito e di conseguenza il tuo browser chiamera' oppure no la pagina PHP.
-
L'iframe è il quadrato dove si scrive il testo, è l'iframe che è all'interno della <form>. Mi correggeresti il codice? Perchè non rieco a capire.
<form action="{$_SERVER['PHP_SELF']}?lin=$lingua&id=$id" method="POST" onsubmit="valori()">
...
...
diverse select per la formattazione del carattere
...
...
[LEFT]<iframe class="Composition" width="100%" id="Composition" height="190">[/LEFT]
</iframe>
<input type="hidden" name="confirm" value="1"><input type="submit" value="".CALX_INVIA.""> (questo l'ho aggiunto io insieme a onsubmit="valori())Le funzioni dello script vengono evocate dalle select.
Lo script come ho detto riceve il testo inserito nell'iframe e gli inserisce i tag html per formattare il testo.
Lo script ha le sue funzioni come ho detto e questa funzione che ho aggiunto io:
[LEFT]
function valori()[/LEFT]
{
[LEFT] [/LEFT]
link_js=...ricezione testo formattato(ma questo cer l'ho già, non mi serve) ;
istruzione per mandare link_js a php.}
-
sinceramente preferisco postari un'esempio simile al tuo,
<?php if(isset($_POST['submit'])){ echo $_POST['link']; exit(); } ?> <script type='text/javascript'> function valori(){ form1.link.value = "prova"; return true; } </script> <form method='post' action="index.php" onsubmit='return valori();' name='form1'> <input name='link' value='del 9' type='text'/> <input name='submit' value='invia' type='submit'/> </form>
grosso modo dovrebbe funzionare, lho scritto al volo
-
E' perfetto e funziona, ma ancora non si adatta a pieno al mio utilizzo:
[LEFT]function valori()
{
c="testo formattato";
form1.link.value = c;[/LEFT]
}Ora riesco a passare il valore che mi serve ma viene visualizzato la casella input di:
<input name="link" value="del 9" type="text">.Provo a dare il nome "link" al mio iframe, ma non funziona:
[LEFT]<iframe class="Composition" name="link" width="100%" id="Composition" height="190">[/LEFT]
</iframe>Però credo che ci siamo, al massimo faccio in modo che quell'input non sia visibile, però ho ancora una speranza. Come posso fare a nominare l'iframe?
-
Risolto, il name="link" lo metto nel bottone:
<input type="submit" name="link" value="Invia">
Grazie a tutti.
A presto.