Je fais une page de "mise à jour" avec JS jquery
Mais dans mon updateit.php, je n'obtiens qu'un index indéfini sur tous mes champs. Je ne sais pas pourquoi.
Voici le formulaire :
<form action="javascript:updateit()" method="post">
<b>+ Giv points for at være online:</b><br>
Points hvert. <input type="text" size="1" id="gpe" name="gpe" value="<?=$row["gpe"]; ?>"> Sekundt.<br>
<b>+ Hvor mange points skal der gives(online):</b><br>
<input type="text" name="gpm" id="gpm" size="1" value="<?=$row["gpm"]; ?>"> Points.<br>
<b>+ Points for videoklip:</b><br>
<input type="text" name="gpv" id="gpv" size="1" value="<?=$row["gpv"]; ?>"> Points.<br>
<b>+ Points for battle:</b><br>
<input type="text" name="gpb" id="gpb" size="1" value="<?=$row["gpb"]; ?>"> Points.<br>
<b>+ Points for kommentar:</b><br>
<input type="text" name="gpk" id="gpk" size="1" value="<?=$row["gpk"]; ?>"> Points. & + <b>for 10 kommentare:</b>
<input type="text" name="gpk10" id="gpk10" size="1" value="<?=$row["gpk10"]; ?>"> Points.<br>
<b>+ Points for spil:</b><br>
<input type="text" name="gpg" id="gpg" size="1" value="<?=$row["gpg"]; ?>"> Points.<br>
<b>+ Points for sjov:</b><br>
<input type="text" name="gps" id="gps" size="1" value="<?=$row["gps"]; ?>"> Points.<br>
<b>+ Points for SC tryout:</b><br>
<input type="text" name="gpsc" id="gpsc" size="1" value="<?=$row["gpsc"]; ?>"> Points.<br>
<b>+ Points for første gang redigering i profil:</b><br>
<input type="text" name="gpep" id="gpep" size="1" value="<?=$row["gpep"]; ?>"> Points.<hr>
<b>- Points for at fjerne videoklip:</b><br>
<input type="text" name="gpRv" id="gpRv" size="1" value="<?=$row["gpRv"]; ?>"> Points.<br>
<b>- Points for at fjerne battle:</b><br>
<input type="text" name="gpRb" id="gpRb" size="1" value="<?=$row["gpRb"]; ?>"> Points.<br>
<b>- Points for at fjerne indhold i "Sjov" sektionen:</b><br>
<input type="text" name="gpRs" id="gpRs" size="1" value="<?=$row["gpRs"]; ?>"> Points.<br>
<b>- Points for at fjerne tutorial:</b><br>
<input type="text" name="gpRt" id="gpRt" size="1" value="<?=$row["gpRt"]; ?>"> Points.<br>
<b>- Points for at fjerne spil:</b><br>
<input type="text" name="gpRg" id="gpRg" size="1" value="<?=$row["gpRg"]; ?>"> Points.<br>
<input type="submit" name="Submit" value="Opdater!"/>
</form>
<div id="insert_response"></div>
updateit.php :
<?php
$gpm= $_POST['gpm'];
$gpe= $_POST['gpe'];
$gpv= $_POST['gpv'];
$gpb= $_POST['gpb'];
$gpk= $_POST['gpk'];
$gpk10= $_POST['gpk10'];
$gpg= $_POST['gpg'];
$gps= $_POST['gps'];
$gpsc= $_POST['gpsc'];
$gpep= $_POST['gpep'];
$gpRv= $_POST['gpRv'];
$gpRb= $_POST['gpRb'];
$gpRg= $_POST['gpRg'];
$gpRs= $_POST['gpRs'];
$gpRt= $_POST['gpRt'];
mysql_query("INSERT INTO member_pointsystem (gpm, gpe, gpv, gpb, gpk, gpk10, gpg, gps, gpsc, gpep, gpRv, gpRb, gpRg, gpRs, gpRt) VALUES ('$gpm', '$gpe' ,'$gpv', '$gpb', '$gpk', '$gpk10', '$gpg', '$gps', '$gpsc', '$gpep', '$gpRv', '$gpRb', '$gpRg', '$gpRs', '$gpRt')") or
die(mysql_error());
echo "works";
?>
(je sais que mes variables en PHP ne sont pas sûres, mais je ne fais que tester )
et le script :
/* ---------------------------- */
/* XMLHTTPRequest Enable */
/* ---------------------------- */
function createObject() {
var request_type;
var browser = navigator.appName;
if(browser == "Microsoft Internet Explorer"){
request_type = new ActiveXObject("Microsoft.XMLHTTP");
}else{
request_type = new XMLHttpRequest();
}
return request_type;
}
var http = createObject();
/* -------------------------- */
/* INSERT */
/* -------------------------- */
/* Required: var nocache is a random number to add to request. This value solve an Internet Explorer cache issue */
var nocache = 0;
function updateit() {
// Optional: Show a waiting message in the layer with ID login_response
document.getElementById('insert_response').innerHTML = "Arbejder.. "
// Required: verify that all fileds is not empty. Use encodeURI() to solve some issues about character encoding.
var gpe= encodeURI(document.getElementById('gpe').value);
var gpm= encodeURI(document.getElementById('gpm').value);
var gpv=encodeURI(document.getElementById('gpv').value);
var gpb= encodeURI(document.getElementById('gpb').value);
var gpk= encodeURI(document.getElementById('gpk').value);
var gpk10= encodeURI(document.getElementById('gpk10').value);
var gpg= encodeURI(document.getElementById('gpg').value);
var gps= encodeURI(document.getElementById('gps').value);
var gpsc= encodeURI(document.getElementById('gpsc').value);
var gpep= encodeURI(document.getElementById('gpep').value);
var gpRv= encodeURI(document.getElementById('gpRv').value);
var gpRb= encodeURI(document.getElementById('gpRb').value);
var gpRg= encodeURI(document.getElementById('gpRg').value);
var gpRs= encodeURI(document.getElementById('gpRs').value);
var gpRt= encodeURI(document.getElementById('gpRt').value);
// Set te random number to add to URL request
nocache = Math.random();
// Pass the login variables like URL variable
http.open('get', 'updateit.php?gpe='+gpe+'&gpm=' +gpm+'&gpv=' +gpv+'&gpb=' +gpb+'&gpk=' +gpk+'&gpk10=' +gpk10+'&gpg=' +gpg+'&gps=' +gps+'&gpsc=' +gpsc+'&gpep=' +gpep+'&gpRv=' +gpRv+'&gpRb=' +gpRb+'&gpRs=' +gpRs+'&gpRg=' +gpRg+'&gpRt=' +gpRt+'&nocache = '+nocache);
http.onreadystatechange = insertReply;
http.send(null);
}
function insertReply() {
if(http.readyState == 4){
var response = http.responseText;
// else if login is ok show a message: "Site added+ site URL".
document.getElementById('insert_response').innerHTML = ''+response;
}
}
(J'ai entendu dire que vous pouvez passer avec jQuery beaucoup plus facilement aussi, mais je n'ai jamais compris, donc je vais prendre cela sur une autre question, donc s'il vous plaît ne me rappelle pas).
Merci !