Partage
  • Partager sur Facebook
  • Partager sur Twitter

Système comme Tinder

Sujet résolu
10 juin 2021 à 1:30:28

Bonjour, je suis en train de créer un système de vote ( swipe left / swipe right ) 

Comment pourrais je faire pour afficher au hasard une photo contenue dans ma base de donnée, étant donné que pour l'instant, c'est codé en dur.

  .directive('noScroll', function($document) {

  return {
    restrict: 'A',
    link: function($scope, $element, $attr) {

      $document.on('touchmove', function(e) {
        e.preventDefault();
      });
    }
  }
})

  .controller('CardsCtrl', function($scope, TDCardDelegate) {
  console.log('CARDS CTRL');
  var cardTypes = [
    { image: 'https://picsum.photos/300/300' },
    { image: 'https://picsum.photos/300/300' },
    { image: 'https://picsum.photos/300/300' },
    { image: 'https://picsum.photos/300/300' },
    { image: 'https://picsum.photos/300/300' }
  ];

  $scope.cards = Array.prototype.slice.call(cardTypes, 0);

  $scope.cardDestroyed = function(index) {
    $scope.cards.splice(index, 1);
  };

  $scope.addCard = function() {
    var newCard = cardTypes[Math.floor(Math.random() * cardTypes.length)];
    newCard.id = Math.random();
    $scope.cards.push(angular.extend({}, newCard));
  }
})

  .controller('CardCtrl', function($scope, TDCardDelegate) {
  $scope.cardSwipedLeft = function(index) {
    console.log('LEFT SWIPE');
    $scope.addCard();
  };
  $scope.cardSwipedRight = function(index) {
    console.log('RIGHT SWIPE');
    $scope.addCard();
  };
});



  • Partager sur Facebook
  • Partager sur Twitter
10 juin 2021 à 11:01:06

Salut,

Tout dépend de ton SGBDR,

  • Pour MySql, utilises la fonction RAND() 
  • Pour SQlite, utilises la fonction RANDOM()
  • Partager sur Facebook
  • Partager sur Twitter

Ton présent détermine ton futur et la connaissance te placera au dessus de ta génération .

10 juin 2021 à 11:21:16

Bonjour,

Mauvais titre

Le titre est un élément important qui ne doit pas être négligé. N'oubliez pas cette règle simple : le titre idéal résume la question que vous allez poser en une petite phrase. Il doit permettre aux visiteurs de se repérer facilement dans le forum visité et d'identifier le sujet à sa seule lecture.

Vous pouvez utiliser divers préfixes comme [Erreur], [MySQL], [Compatibilité], etc... Aussi, pensez à consulter les règles propres à chaque forum (visibles dans les topics épinglés en haut des sections).

De plus, choisir un bon titre permet de rendre plus faciles les recherches des autres membres.

Les titres de type "besoin d'aide" ou "problème" ne sont pas tolérés.

Merci de modifier votre titre. Pour cela, éditez le premier message de votre sujet.

(titre originel : Système comme Tinder)

  • Partager sur Facebook
  • Partager sur Twitter

Pas d'aide concernant le code par MP, le forum est là pour ça :)

10 juin 2021 à 13:21:09

C'est bon, j'ai trouvé tout seul

En mettant le JS sur la même page et en mettant du PHP directement à l'intérieur.

 .controller('CardsCtrl', function($scope, TDCardDelegate) {
  console.log('CARDS CTRL');
  var cardTypes = [
  <?php 
while ($photos = $req->fetch(PDO::FETCH_OBJ)) {
  echo "{ image: '".$photos->source."' },";
}
   ?>

    { image: '<?php echo 'https://picsum.photos/300/300'; ?>' }
  ];

  $scope.cards = Array.prototype.slice.call(cardTypes, 0);

  $scope.cardDestroyed = function(index) {
    $scope.cards.splice(index, 1);
  };



  • Partager sur Facebook
  • Partager sur Twitter