Originariamente inviato da hab
<script type="text/javascript" language="javascript">
var http_request = false;
function makePOSTRequest(url, parameters) {
http_request = false;
if (window.XMLHttpRequest) { // Mozilla, Safari,...
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
// set type accordingly to anticipated content type
//http_request.overrideMimeType('text/xml');
http_request.overrideMimeType('text/html');
}
} else if (window.ActiveXObject) { // IE
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) {
alert('Cannot create XMLHTTP instance');
return false;
}
http_request.onreadystatechange = alertContents;
http_request.open('POST', url, true);
http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
http_request.setRequestHeader("Content-length", parameters.length);
http_request.setRequestHeader("Connection", "close");
http_request.send(parameters);
stringa_post;
//<-- ELIMINA QUESTA RIGA
}
function alertContents() {
if (http_request.readyState == 4) {
if (http_request.status == 200) {
alert(http_request.responseText);
result = http_request.responseText;
document.getElementById('myspan').innerHTML = result;
} else {
alert('There was a problem with the request.');
}
}
}
var elenco_input = new Array();
var elenco_checkbox = new Array();
var elenco_selezionati = new Array();
var stringa_post = ""; // definisco stringa_post fuori dalla funzione controllaCheckbox
var s = 0;
elenco_input = document.getElementsByTagName("input");
for (i=0; i<elenco_input.length; i++) {
if (elenco_input[i].getAttribute("type") == "checkbox") {
elenco_checkbox[s] = elenco_input[i];
s++;
}
}
function controllaCheckbox() {
elenco_selezionati = Array(); //azzero l'elenco di quelli selezionati
var p=0;
for (i=0; i<elenco_checkbox.length; i++) {
if (elenco_checkbox[i].checked == "true") {
elenco_selezionati[p] = elenco_checkbox[i];
p++;
}
}
for (i=0; i<elenco_selezionati.length; i++) {
elenco_selezionati[i] = elenco_selezionati[i].getAttribute("id");
}
stringa_post = "";
<-- Ho tolto "var", e "azzero" la stringa ad ogni chiamata della funzione
for (i=0; i<elenco_selezionati.length-1; i++) {
stringa_post = stringa_post + i + "=" + elenco_selezionati[i] + "&";
}
stringa_post = stringa_post + (elenco_selezionati.length - 1) + "=" + elenco_selezionati[elenco_selezionati.length-1];
}
-->
</script>
e poi la parte in php:
<form name="tablesForm" method="post" action="javascript
:makePOSTRequest('post.php',stri nga_post);" id="myform" >
.
.
.
echo "\n<tr>\n";
echo "\n<td><input id='$id' type='checkbox' name='selected_tbl[]' value='$i' onclick='controllaCheckbox()' ></td>\n";
$elenco_id = $elenco_id . $i . "\", \""; //da mettere ogni volta che hai un nuovo $id
foreach ($keys as $k)
{
echo "<td>" . $row[$k] . "</td>\n";
}
echo "</tr>\n";
.
.
.
<input type="submit" name="remove" value="remove" >
ho evitato di mettere alcune parti inutili del form tipo <table> che cmq ci sono gia..