JeuWeb - Crée ton jeu par navigateur
Push en PHP/Ajax - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Push en PHP/Ajax (/showthread.php?tid=5757)

Pages : 1 2 3 4 5 6 7 8 9


RE: Push en PHP/Ajax - Arius Vistoon - 20-10-2011

corrigé moi si je me trompe, mais le package git-core est un package obsolète non ?

Edit :
je viens de regarder ce que j'avais installé sur mon serveur. c'est Git. Git-core est effectivement obsolète (malgré le fait que toutes les documentations du web en parlent !!!). ceci dit, cela est peut etre dut au fait que je sois sur une ubuntu oneiric

NB : j'ai découvert git sur ce forum Wink


RE: Push en PHP/Ajax - niahoo - 20-10-2011

ben moi j'ai installé git-core via les dépôts sur toutes mes machines et ça tourne très bien donc bon



RE: Push en PHP/Ajax - Sephi-Chan - 20-10-2011

Effectivement git-core a été renommé en git. C'est le nom qui est obsolète, pas le paquet en lui-même.
Mieux vaut utiliser le nouveau nom (d'autant qu'il est plus simple) mais ça n'a pas grande importance. ^^


RE: Push en PHP/Ajax - Annx - 21-10-2011

Citation :Pour revenir un peu sur le dossier partagé comment as-tu procédé ? Je crois que tu t'es compliqué la vie 34".

Dans les options de la machine virtuel tu peux le faire directement normalement, VMWare le fera tout seul à chaque fois que tu démarrera la machine.
Dans "Edit virtual machine settings" puis dans l'onglet "options" tu as "Shared Folders" et à droite tu as "Add" tu met dit le chemin d'accès (où sont les fichiers à partager) te le nom qu'il aura pour la machine, après ne pas oublier de mettre "Always enabled" juste au dessus.

Sinon moi aussi faudrait que je test un de ces quatre le système de push 1.

J'ai utilisé Virtual Box pour la machine virtuelle, c'est quasiment pareil, les différentes étapes :

- 1 : installer les additions : menu "Périphériques" > "Installer les additions invités..."
- 2 : Cela te créé un "cd virtuel", tu copies/colle les données de "cd" dans un autre dossier
- 3 : tu installes les additions
- 4 : créer le dossier sous windows qui sera partager
- 5 : sur ta machine virtuelle, menu "Périphériques" > "Dossiers partagés", et tu créé ton dossier partager
- 6 : exécuter sur la machine virtuelle :

Code :
sudo mount -t vboxsf  <nom dossier partage défini dans la gestion des dossiers partagés de ta VM> <chemin et nom du dossier sur la machine virtuelle>

A l'heure actuelle, je dois à chaque fois faire le mount quand je redémarre la machine virtuelle, il faudrait que je vois s'il n'y a pas un autre moyen (modifier peut être /etc/fstab ?)

Citation :Peut-être que Annx fera un joli article Mettre en place du push avec PHP, Redis et Juggernaut sur Ubuntu. 10

Du coup je n'ai pas suivi mais… Tu codes depuis ton Windows ou depuis ton Ubuntu ?

Si la question est pour moi, oui.

Et oui je comptais bien faire un article là dessus, je le ferais une fois que j'aurais fait un push maison, pour le moment j'ai un petit soucis avec l'appel de la classe "Redis", ça me retourne rien et tous les echo derrière ne fonctionne pas -.-. Vu que le test http://localhost:8080 fonctionne, je devrais pouvoir le faire fonctionner.

Après je me demande s'il ne me manque pas ça : https://github.com/nicolasff/phpredis pour le faire fonctionner en php.

EDIT
Bon je pense avoir bien installé phpredis, mais toujours rien, je continue de chercher.

Tiens une question, le http://localhost:8080 correspond à un fichier physique? On doit utiliser le port pour l'utilisation de juggernaut ?




RE: Push en PHP/Ajax - Sephi-Chan - 21-10-2011

(21-10-2011, 07:23 AM)Annx a écrit : Et oui je comptais bien faire un article là dessus, je le ferais une fois que j'aurais fait un push maison, pour le moment j'ai un petit soucis avec l'appel de la classe "Redis", ça me retourne rien et tous les echo derrière ne fonctionne pas -.-. Vu que le test http://localhost:8080 fonctionne, je devrais pouvoir le faire fonctionner.

Après je me demande s'il ne me manque pas ça : https://github.com/nicolasff/phpredis pour le faire fonctionner en php.

EDIT
Bon je pense avoir bien installé phpredis, mais toujours rien, je continue de chercher.

Tiens une question, le http://localhost:8080 correspond à un fichier physique? On doit utiliser le port pour l'utilisation de juggernaut ?

Bien sur qu'il faut phpredis, c'est marqué noir sur blanc dans la doc. -.-

Tu as bien installé l'extension comme c'est marqué ? Et tu as bien relancé ton serveur Web derrière ?

La page que tu vois sur http://localhost:8080 est exposée par Juggernaut, qui lance un serveur Web sur le port 8080. Et la page HTML correspond au fichier présent dans public/index.html de ton répertoire Juggernaut.




RE: Push en PHP/Ajax - Annx - 21-10-2011

Code :
Tu as bien installé l'extension comme c'est marqué ? Et tu as bien relancé ton serveur Web derrière ?

Normalement, oui, voilà la procédure que j'ai effectuée :

Code :
cd /usr/src
sudo git clone git://github.com/nicolasff/phpredis
cd phpredis
sudo phpize
sudo ./configure
sudo make && make install

Une fois tout ceci fait, j'ai copié le php redis.ini dans conf.d avec cette commande:

Code :
cd rpm
cp redis.ini /etc/php5/conf.d

Et pour finir, j'ai rajouté l'extension avec gedit dans le php.ini de /etc/php5/apache2.

Code :
extension=redis.so

Donc je pense avoir tout bien installé non ?

Et j'ai bien sur tout relancé, j'ai même éteint la VM pour tout redémarrer.


RE: Push en PHP/Ajax - niahoo - 21-10-2011

(21-10-2011, 11:19 AM)Annx a écrit : Donc je pense avoir tout bien installé non ?

ben ça marche ou non ?


RE: Push en PHP/Ajax - Annx - 21-10-2011

Citation :ben ça marche ou non ?

Non toujours pas mais j'avance, j'ai édité le fichier redis.conf pour rajouter un bind avec l'ip de ma VM, et à partir de là, l'appelle de la class redis a fonctionné, il faut juste que je trouve pourquoi il me retourne false avec :

Code :
self::$Redis->publish('juggernaut', json_encode($message));

EDIT :

Code :
self::$Redis->publish('juggernaut', json_encode($message));

me retourne maintenant int(1), donc tout doit bien se passer.

J'ai modifié le php.ini pour mettre le chemin complet vers redis.so.


RE: Push en PHP/Ajax - Annx - 22-10-2011

C'est bon, le push fonctionne bien Big Grin

Pour l'article, je fais un post sur le forum ?

Une question quand même, pour afficher le http://localhost:8080 dans une autre page, on est obligé d'utiliser une iframe ?

Voilà le premier test effectué :

Code :
<!DOCTYPE html>
<html>
<head>
  <meta name="charset" content="utf-8">
  <title>channel1</title>
  <script src="http://localhost:8080/application.js" type="text/javascript" charset="utf-8"></script>
  <script src="jquery-1.6.2.min.js" type="text/javascript" charset="utf-8"></script>

  <script type="text/javascript">
        function sendajaxmessage(message)
        {
            $.post('/sendajax.php?message=' + message, function(data){});
        }
  </script>
</head>
<body>

  <iframe src="http://localhost:8080" style="width:500px;height: 200px;"></iframe>

  
  <form name="formsend" id="formsend" action="index.php" onSubmit="sendajaxmessage($('#message').val()); return false;">
      <input type="text" name="message" id="message" >
      <input type="submit" name="k" value="envoyer">
  </form>
</body>
</html>



RE: Push en PHP/Ajax - Sephi-Chan - 22-10-2011

Comme tu veux pour l'article.

Pourquoi est-ce que tu veux afficher la page qui tourne sur le port 8080 ?