verification avant d'afficher !!

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : verification avant d'afficher !!

par Truc » 26 nov. 2007, 21:01

Certes pour un vrai export (schéma des tables) regarde ceci (partie Autres opérations > export)

Devrait faire l'affaire

Code : Tout sélectionner

SELECT number, url_image FROM publicite JOIN clic_ban ON publicite.number = clic_ban.numero_ban WHERE publicite.clic_restant > 0 AND clic_ban.id_membre <> ".$_SESSION["id_membre"];

par Invité » 26 nov. 2007, 20:22

Le membre clic sur la bannière, on insère :

("insert into clic_ban value('$number', '$id')");

$number = numero identifiant annonceur
$id = identifiant du membre qui à cliquer

La table se nomme "clic_ban" et contient 2 champs de type varchar : "numero_ban" et "id_membre" !

La requète doit donc aussi vérifier dans cette table si la bannière à été cliquer par ce membre, sinon on affiche :idea:

par Truc » 26 nov. 2007, 20:11

Mais je ne peux pas deviner la structure de l'autre table :?

Montre nous ça avec un "Export" des tables sous forme de "CREATE TABLE ..."

---------------------------
J'en profite pour déplacer dans le forum "Base de données"

par Invité » 26 nov. 2007, 20:06

"SELECT number, url_image FROM publicite WHERE clic_restant>0 AND champ_id_membre <> ".$_SESSION["id_membre"]; 
oui mais quand le membre clic, son ID et le numéro de bannière s'insere automatiquement dans une autre table.

Par exemple, j'ai 10 bannière qui s'affiche, le membre 5 clic sur la bannière portant le n°1. Hop, on insère l'ID 5 du membre et le numéro 1 de la bannière.

La requete doit donc vérifier aussi sur l'autre table quel bannière à été cliquer par ce membre pour n'afficher que les bannières restantes (c'est à dire du numéro 2 à 10) !

j'èspère me faire comprendre :oops:

par Truc » 26 nov. 2007, 19:59

Donc te suffit d'exclure de la requête de sélection les enregistrements en relation avec l'id en session
"SELECT number, url_image FROM publicite WHERE clic_restant>0 AND champ_id_membre <> ".$_SESSION["id_membre"]; 
(Puis j'aime pas échanger avec un "invité" :wink: )

par Invité » 26 nov. 2007, 19:45

Sinon, l'id du membre passe en session, je récupère la valeur de l'id en session....

par Invité » 26 nov. 2007, 19:44

Oui, j'ai oublier de rajouter la récupération de l'ID du membre dans l'url :!:

Donc, ma requete doit afficher seulement les bannières qui n'ont pas été cliquer par le membre :?:

par Truc » 26 nov. 2007, 19:38

Je te pose une autre question...
Comment sais tu que le membre X a cliqué sur la bannière Y ?
Une fois qu'un membre clique, son ID est enregistrer dans une autre table avec le numero "number" de la bannière.
Est-ce que c'est fonctionnel ?

verification avant d'afficher !!

par Invité » 26 nov. 2007, 19:27

Bonjour,

je cherche depuis quelques temps la solution à mon problème mais je ne trouve pas :(

On m'a parler de faire 2 requetes en une..?

Je vous explique :

J'affiche sur mon site des bannières de pub présente dans ma table comme ceci :
<?php 
$mpo = mysql_query("SELECT number, url_image FROM publicite WHERE clic_restant>0");
echo'<table width="65%" BORDER=1><tr><td><div align="center"><b>Banniere</td></tr>';
while ($donnees = mysql_fetch_array($mpo))
{
        echo'<tr><td>><a href="http://www.monsite.com/redir.php?number='.$donnees['number'].'" target="_blank"><img src="'.$donnees['url_image'].'"></a></td></tr></table>';
}
?>
Une fois qu'un membre clique, son ID est enregistrer dans une autre table avec le numero "number" de la bannière. Comme cela, la bannière qu'a cliquer le membre ne s'affiche plus . (enfin, c'est ce que je voudrait...)

Ma question est donc : Comment vérifier dans la table si le membre à déja cliquer ou non sur tel ou tel bannière ? Une requete, oui, je sait , mais comment inclure celle ci dans ma requete de sélection de bannière ?

Merci à tous de votre aide :wink: