Bonsoir,
Il manque le paramètre "id" dans le insert
Salut, voilà j'ai un problème je n'arrive pas à compter le nombre de visiteur pour chaque profil. exemple : profil.php?id=1 je n'arrive pas à le compter.
Par contre j'ai essayé de faire sans le id=1 il me compte bien le profil.php mais c'est pas ce que je veux :
ma fonction :
function nbr_visites()
{
global $dbh;
$page = basename($_SERVER['SCRIPT_NAME']);
$id = (htmlentities($_GET['id']));
$srt = $dbh->prepare('SELECT * FROM profil WHERE id= :id');
$srt->execute(array('id' => $_GET['id']));
$nombresrt = $srt->fetch();
$query = $dbh->prepare('INSERT INTO visites (nom_page, nbr) VALUES (:page, :nomb) "');
$query->bindParam(':page', $page);
$query->bindValue(':nomb', '1');
$query->bindParam(':id', $nombresrt);
$query->execute();
}
?>
table visites

membre

15 réponses
$query->bindParam(':id', $nombresrt);
( ! ) Notice: Array to string conversion in C:\wamp\www\projet\modele\get_film.php on line 60
bsr, ligne 60, j'avais déjà tester en mettant le where mais vu l'erreur de notice j'ai préfèrer pas le mettre mais en le mettant j'ai l'erreur de notice
Faite un var_dump de $nombresrt et je pense que vous comprendrez d'où viens le problème
C'est une erreur de conversion car c'est un tableau, je peu le résoudre comment ? AVEC LE VARDUMP, sur le nombresrt j'ai bien un tableau.
Le var_dump est juste l'affichage en mode debug d'une variable
Qu'affiche-t-il ?
array (size=22)
'id' => string '1' (length=1)
0 => string '1' (length=1)
'pseudo' => string 'dav' (length=8)
1 => string 'dav' (length=8)
Qu'elle devrait être la valeur de $nombresrt ?
La valeur de $nombresrt c'est bien la valeur du SELECT de l'id du membre.
Donc théoriquement c'est toujours 1 puisque chaque profil à son id ?
Ouaip je suis dac
Qu'elle est l'intérêt de récupérer cela hormis le fait de savoir si le profil existe ?
Pour récupérer l'id sinon je pourrai plus faire de where, je vais en avoir besoin pour compter chaque visiteur pour chaque profil
Vous l'avez déjà avec $_GET['id'] ?
Pas besoin de WHERE pour un insert... ton 3 paramètre est par conséquent inutile.
Pour un info, quand on utlise cette requete : $query = $dbh->prepare('INSERT INTO visites (nom_page, nbr) VALUES (:page, :nomb) "');
Il n'y a pas besoin de rapeller chaque table dans le même ordre de dans la base données !