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();
  };
});

1 réponse


ToinouPHP
Auteur
Réponse acceptée

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);
  };