2010-05-02 13 views
8

Ho una chiamata $ .get() a una pagina PHP che accetta 4 parametri GET. Per qualche ragione, nonostante abbia chiamato $ .get() tutti e 4, passa solo i primi due. Quando guardo la console di sviluppo in chrome, mostra l'URL che viene chiamato e passa solo action e dbname. Heres il codice:JQuery .get() passando solo i primi due parametri di dati nell'url

$.get('util/util.php', { action: 'start', dbname: db, url: starturl, crawldepth: depth }, function(data) { 
     if (data == 'true') { 
      status = 1; 
      $('#0').append(starturl + "<ul></ul>"); 
      $('#gobutton').hide(); 
      $('#loading').show("slow"); 
      while(status == 1) { 
       setTimeout("update()",10000); 

      } 
     } else { 
      show_error("Form data incomplete!"); 
     } 
    }); 

e heres l'URL che vedo nella console sviluppatore:

http://localhost/pci/util/util.php?action=start&dbname=1hkxorr9ve1kuap2.db

** EDIT ** Sono stato informato che ho bisogno di codificare l'URL che Sto cercando di passare attraverso l'intestazione. Come faccio a codificarlo in javascript e decodificarlo in php?

+0

Sei sicuro che 'starturl' e' depth' sono definiti? Inoltre devi codificare l'URL. –

+0

sì sono definiti. Come faccio a codificare l'url? –

risposta

3

Sei sicuro che le variabili starturl e depth siano definite? Un semplice alert() prima di $ .get() sarà sufficiente per controllare.

Per quanto riguarda la modifica, è possibile codificare stringhe in JavaScript con la funzione encodeURIComponent. E decodificalo nuovamente in PHP con urldecode. Entrambi accettano un argomento di stringa.

0

Probabilmente sarà necessario verificare se le stringhe di input sono correttamente citate. Internamente jQuery costruirà la stringa del parametro fuori dalla mappa dei parametri specificata usando il suo metodo param(). Questo metodo costruirà un oggetto delle chiavi e dei valori, che probabilmente non saranno analizzabili se si citano le chiavi e i valori in modo errato.

@ Felix Kling: jQuery codifica automaticamente chiavi e valori della stringa di parametri con encodeURIComponent.

Problemi correlati