Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Passare valori da JavaScript a PHP...

    Devo, come citato in oggetto, passare dei valori da javascript a php,
    consentendomi poi di inviarli e registrarli su di un db mysql.
    Come esempio riporto questo stralcio di codice:

    • <SCRIPT LANGUAGE="JavaScript">

      <!-- Begin
      function createForm(number) {
      data = "";
      inter = "'";
      if (number < 16 && number > -1) {
      for (i=1; i <= number; i++) {
      if (i < 10) spaces=" ";
      else spaces=" ";
      data = data + "URL " + i + " :" + spaces
      + "<input type='text' size=10 name=" + inter
      + "url" + i + inter + "'>
      ";
      }
      if (document.layers) {
      document.layers.cust.document.write(data);
      document.layers.cust.document.close();
      }
      else {
      if (document.all) {
      cust.innerHTML = data;
      }
      }
      }
      else {
      window.alert("Please select up to 15 entries.");
      }
      }
      // End -->
      </script>




    Inserito tra tag <head></head>,
    e tra i tag <body></body> quest'altro codice:



    • <center>
      <form name=counter>
      Number of URLs to enter:
      <input type=text name=number size=5>
      <input type=button value="Update" onClick="createForm(counter.number.value);">
      </form>


      <form name="prova" method="post" action="prova.php">
      <table border=0>
      <tr valign=top>
      <td>Name:</td>
      <td><input type="text" size="20" name="file_in" onChange="msg(this.form)"></td>
      </tr>
      <tr>
      <td colspan=2>

      <span id="cust" style="position:relative;"></span>
      </td>
      </tr>
      <tr valign=top>
      <td>Comments:</td>
      <td>
      <textarea name="commento" cols=45 rows=5 wrap="virtual "OnChange="msg(this.form)">
      </textarea>
      </td>
      </tr>
      <tr>
      <td></td>
      <td><input type=submit value="Send"></td>
      </tr>
      </table>
      </form>
      </center>



    Adesso, il valore legato al primo campo <input name="file_in">
    e l'ultimo nel campo <textarea name="commento">,
    li passo tranquillamente al file php "prova.php",
    mentre quelli inseriti all'interno del codice Javascript non so come gestirli.
    Oltre al fatto che dovrei gestire una numero di "i" volte di quel valore
    (a seconda del numero che inserisco nel campo <input name"number">.


    RINGRAZIO ANTICIPATAMENTE TUTTI COLORO CHE MI SAPRANNO DARE
    DELLE UTILI INDICAZIONI / DRITTE PER RISOLVERE QUESTO PROBLEMA.
    <!-- TopiX -->

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Benvenuto nel forum

    Ti sposto nel forum PHP, dato che il tuo problema si risolve lato server...

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Da quel che leggo vorresti incrementare di x campi il form, e passare il tutto alla pagina prova.php, e non sai come recuperare i valori passati dai campi aggiunti.
    Se è cosi, e lo script postato funziona javascript ha ultimato il suo compito, il problema l'hai lato server php (che non conosco) pertanto segnala "moderatore" di spostarti sul forum php.
    Oppure se non è cosi prova a rispiegare il problema.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  4. #4
    Scusa, sarà che sono stanco ma non ho capito una cosa...

    Quali dati vuoi passare e a chi?

  5. #5
    Quali dati vuoi passare e a chi?
    I dati che voglio passare sono quelli che inserisco negli "n" campi input generati dallo script JavaScript; I dati li devo passare tramite il metodo "post" ad una pagina PHP che li elaborerà.
    Il punto è questo... come vengono passati questi dati?
    Dal lato del file PHP raccolgo normalmente le variabili passate dai campi input del quale conosco il "nome"... ma, come faccio a conoscere o ad imporre il "nome" degli "n" campi genarati da JavaScript?

    GRAZIE
    <!-- TopiX -->

  6. #6
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    non voglio invadere lo spazio di php, di cui purtroppo non conosco niente, ma, dato che ho fatto delle prove:

    la parte client funziona quasi, ci sono delle piccole stranezze. Aggiungo un hidden che manda al server il numero di campi aggiunti

    ***
    if (number < 16 && number > -1) {
    data = '<input type="hidden" name="number_url" value="' + number + '" />';

    for (i=1; i <= number; i++) {

    ***

    nel server recupero le variabili file_in, commento, number_url e url1, url2, urln.

    Perciò recupero gli url url facendo un ciclo. I nomi saranno composti da "url" + numero che va da 1 a number_url



    Questo è un modo, l'altro è quello di scorrersi tutte le chiavi ricevute che iniziano per url, ma qui subentra la mia ignoranza di php perciò termino prima di aggiungere altre sciocchezze.
    Pietro

  7. #7

    Ma... precisamente, dove inserisco queste istruzioni?

    Ho fatto delle prove, non riesco a far passare nessun valore del campo input che
    è insito nell'istruzione javascript...
    ...nella pagina PHP cerco di recuperare tale valore nello stesso modo degli altri!
    Sbaglio forse?

    Nella fattispecie ho fatto:

    ***
    $url = trim($_POST['url']);
    ***

    ...però credo che sia sbagliato o incompleto...
    ... il fatto è che non so come interpretare quanto assegnato a "name"
    e cioe:

    ***
    name=" + inter + "url" + i + inter + "
    ***

    ... a voi la palla...
    <!-- TopiX -->

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