Je crois avoir compris pourquoi mon code n'avait aucune chance de fonctionner : le JS est exécuté chez le client et le serveur ne peut donc pas connaître la valeur de la variable cpu, c'est bien ça ?
J'ai donc suivi ton conseil d'envoyer la valeur de la variable cpu en paramètre, mais j'ai utilisé la méthode POST et non GET pour que ce soit plus "transparant" (c'est à dire que la variable cpu ne soit pas affichée dans l'url).
Malheureusement, j'obtiens toujours une erreur de syntaxe lors de la requete !
Voici le code :
<?php
$add = (isset($_POST['add']))?$_POST['add']:0; // on récupère l'éventuelle variable postée
if($add==0)
{
?>
<form name="form" method="post" action="">
<input name="add" type="hidden" value="1">
<input name="cpu" type="hidden" value="<script language='Javascript'> document.write(navigator.cpuClass); </script>">
<input type="submit" name="Submit" value="Envoyer">
</form>
<?
}
else
{ // ajout des infos à la table
// on récupère les infos
$date = date('U');
$cpu = (isset($_POST['cpu']))?$_POST['cpu']:"Inconnu";
include "sql.php";
$sql = "INSERT INTO table (date,cpu) VALUES ('$date','$cpu')";
mysql_query($sql) or die('Erreur SQL !<br><br>'.mysql_error()); // erreur de syntaxe lors de cette requete
mysql_close();
}
?>