Ich habe die folgende jQuery click() -Funktion, die die Formulardaten über AJAX an die Datenbank senden müssen.Gibt es eine maximale Datenlänge für eine AJAX jQuery Anfrage
$("#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 });
})
});
Das Problem ist, dass, wenn das Textfeld #maandtekstinput darin zu viel Text hat, nur das Anfügen arbeitet, aber die Daten nicht erreicht meine SQL-Datenbank.
Mein ajax.php-Skript hat eine einfache switch-Anweisung.
$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;
}
Ich frage mich, warum mein Skript nicht liefert meinen Textbereich Text in die Datenbank. In meiner Datenbank ist es ein langes Textfeld mit 5000 Zeichen Leerzeichen
Ahaaa. Das hat mich eine Stunde Debugging gekostet. Danke für Ihre Hilfe, es funktioniert :) – user1755868
Siehe auch [Was ist die maximale Länge einer URL?] (Http://stackoverflow.com/q/417142/1338846). –