2012-10-18 10 views
6

Ho la seguente funzione clickQuery jQuery che deve inviare i dati del modulo tramite ajax al database.Esiste una lunghezza massima dei dati per una richiesta jQuery ajax

$("#maandbutton").live('click', function(event) { 
    $.get("ajax.php",{"action":"addm","maandtekst":$('#maandtekstinput').val(),"maand":$('#maandselect').val(),"bovenonder":$('#bovenonder').val()},function(msg){ 
     $("#maandtable").append($('<tr><td class="left">' + $('#maandtekstinput').val() + '</td><td class="right">' + $('#bovenonder').val() + '</td><td class="right">' + $('#maandselect').val() + '</td><td class="icon"></td></tr>')); 
     $('table.zebra tr').removeClass('odd'); 
     $('table.zebra tr:odd').addClass('odd'); 
     $('#maandtekstinput').val(''); 
     $('#maandselect').val(''); 
     $('#bovenonder').val(''); 
     $("#maandbutton").button({ disabled: true }); 
    }) 
}); 

Il problema è che se la #maandtekstinput textarea deve molto testo in esso, solo l'accodamento sta lavorando, ma i dati non raggiunge il mio database SQL.

Il mio script ajax.php ha una semplice istruzione switch.

$maandtekst = htmlspecialchars($_GET['maandtekst']); 

switch($_GET['action']) 
{ 
    case 'addm': 
     $query = "INSERT INTO `site_maandteksten` (`id`, `maand`, `bovenonder`, `tekst`) VALUES (NULL, '".$maand."', '".$bovenonder."', '".htmlspecialchars_decode($maandtekst)."')"; 
     $result = mysql_query($query) or die(mysql_error()); 
     break; 
} 

Mi chiedo perché il mio script non recapita il testo textarea al database. Nel mio database è un campo di testo lungo con spazio di 5000 caratteri

risposta

3

Non utilizzare una query GET per i big data: utilizzare un POST.

$.post("ajax.php",{"action":"addm","maandtekst":$('#maandtekstinput').val(),"maand":$('#maandselect').val(),"bovenonder":$('#bovenonder').val()},function(msg){ 

(e in PHP utilizzano $_POST o $_REQUEST)

Il problema con le query ottenere è che i parametri sono incorporati nella URL, che è limitata in termini di dimensioni (questo limite è browser e server dipendente).

+1

Ahaaa. Mi ci è voluta un'ora di debugging. Grazie per il vostro aiuto funziona :) – user1755868

+0

Vedere anche [Qual è la lunghezza massima di un URL?] (Http://stackoverflow.com/q/417142/1338846). –

Problemi correlati