IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Mettre en favoris une annonce


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2010
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 71
    Par défaut Mettre en favoris une annonce
    Bonjour à tous,

    Je voudrais mettre en place un système de sauvegarde des annonces sur mon site en cliquant sur une icone qui change de couleur une fois avoir cliquer dessus et qui reste mémorisée lors de sa prochaine visite. Avec les cookies ? un début de code que je comprenne comment sa marche.

    Merci de votre aide.

    Portez-vous bien...

  2. #2
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 518
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 518
    Par défaut
    Bonjour,

    Commence alors par le troisième exemple de la documentation, là où ils expliquent comment utiliser les cookies en php.

    Puisque tu es sur le forum de base de données, pourquoi ne pas gérer ça avec mysql ?

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2010
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 71
    Par défaut
    Bonjour,
    le problème c'est que je veux sauvegarder une annonce (ou plusieurs) choisit dans la liste mais sans recharger la page. Il faut donc permuter l'image avec une autre et mettre à jour la BDD en même temps. C'est ça que je ne sais pas comment faire.
    Je ne suis peut-être pas dans la bonne section du coup.
    Mais déjà le gérer avec PDO pour mon cas, c'est déjà une bonne info

  4. #4
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 518
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 518
    Par défaut
    Bonjour,
    Citation Envoyé par cris84 Voir le message
    le problème c'est que je veux sauvegarder une annonce (ou plusieurs) choisit dans la liste mais sans recharger la page.
    Ce n'est pas un problème, parce que AJAX existe.

    Concernant l'image d'annonce, tu n'as qu'à mettre le nom de l'image dans la colonne de la table "annonce".

    Commence par créer 3 tables mysql, annonce(id_annonce,id_proprietaire,img_annonce,contenu_annonce,date_annonce), et une table utilisateur(id_user,login,password...) et une troisième table favoris(id_favoris,id_user,id_annonce,date_favoris) dans laquelle tu met id_annonce en tant que clé étrangère de la table annonce et id_user de la table utilisateur.

    Bref... essaies d'écrire un code php/mysql et met le dans la discussion pour qu'on puisse t'aider si t'es bloqué.

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2010
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 71
    Par défaut
    Bonsoir,

    alors voilà, j'ai créé la table favoris comme suit :

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    CREATE TABLE IF NOT EXISTS `favoris` (
      `id_favoris` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
      `id_membre` int(12) NOT NULL,
      `id_annonce` smallint(5) unsigned NOT NULL,
      `date` date DEFAULT NULL,
      PRIMARY KEY (`id_favoris`),
      KEY `fk_add_favoris_id_annonce` (`id_annonce`),
      KEY `fk_add_favoris_id_membre` (`id_membre`)
    ) ENGINE=MyISAM ;

    Ensuite j'ai créé le code pour insérer l'annonce dans la table (avec 93 comme id_annonce déjà existante) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    if(isset($_SESSION['id'])) {
     
    		$sql = $bdd->query("SELECT * FROM favoris as af INNER JOIN membres as am ON  af.id_membre=am.id INNER JOIN annonces as aa ON af.id_annonce=aa.id WHERE aa.id=93");
    		$donnees_id = $sql->fetch();
    		$nb_of_rows = $sql->rowCount(); 
     
    	if($nb_of_rows == 0)
     
    	{
    		$id_annonce = 93;
     
    		$insert = $bdd->prepare('INSERT INTO favoris (id_membre, id_annonce, date) VALUES (:id_membre, :id_annonce, NOW())');
    		$insert->execute(array(
    		'id_membre' => $_SESSION['id'],
    		'id_annonce' => $id_annonce
    		));
    		}
     
    		}
    Mon code fonctionne parfaitement, mais, l'utilisateur doit être connecté pour pouvoir sauvegarder l'annonce. Dans l’absolu, j'aimerai que hors connexion quand l'utilisateur sauvegarde une annonce, elle le soit toujours une fois connecté.

  6. #6
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 518
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 518
    Par défaut
    Bonsoir,

    Ok, mais si jamais quelqu'un consulte ton site alors qu'il n'est même pas inscrit ? tu comptes gérer ses favoris aussi ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. peut on mettre a jour une ancienne version de postgresql
    Par gballou dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 28/11/2005, 15h01
  2. Mettre à jour dynamiquement une fenêtre swing
    Par madina dans le forum Agents de placement/Fenêtres
    Réponses: 1
    Dernier message: 23/11/2005, 19h08
  3. "Mettre le focus" à une application à partir de son Handle
    Par Tardiff Jean-François dans le forum Composants VCL
    Réponses: 2
    Dernier message: 04/07/2005, 08h54
  4. [Syntaxe] mettre des ' dans une string ?
    Par souch dans le forum Débuter
    Réponses: 4
    Dernier message: 14/08/2003, 16h26
  5. Comment mettre en place une structure 3 tiers.
    Par WOLO Laurent dans le forum Débats sur le développement - Le Best Of
    Réponses: 13
    Dernier message: 27/07/2003, 22h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo