Si vous êtes administrateur d’un serveur, vous avez alors très bien compris que son intégration dans son site web est primordiale : livemap, liste des joueurs connectés, système de donations… Que diriez-vous de pousser encore plus loin ce concept ?
Présentation
PHPsend est un plugin pour serveurs Bukkit développé par kittyPL. Couplé à une API PHP, il vous permettra en seulement quatre lignes de code d’envoyer des commandes à votre serveur, de manière totalement sécurisée. Simple, mais efficace !
Attention : ce plugin ne s’adresse pas à n’importe-qui. En effet, étant principalement utile pour le développement de sites web, des connaissances accrues dans le langage PHP sont nécessaires à son utilisation. Envoyez-donc un lien vers cet article à votre webmaster !
Installation
Premièrement, téléchargez la dernière version du plugin et de son API. Une fois l’archive extraite, vous devriez obtenir deux fichiers : PHPsend.jar, le plugin, et PHPsend.php, l’API.
Installez le plugin comme vous le feriez d’habitude, en prenant bien soin d’aller faire un tour dans sa configuration ;
- port – le port utilisé par le plugin (n’oubliez pas de l’ouvrir !)
- password – le mot de passe utilisé pour l’authentification (vous pouvez le modifier)
Une fois cela fait, placez le fichier PHPsend.php où vous voulez dans votre site web. L’installation est terminée !
Utilisation
Voici comment créer un script permettant d’envoyer une commande à votre serveur. L’API ne contient que quatre méthodes, ce n’est donc pas très compliqué.
Premièrement, vous devez inclure l’API dans votre script (pensez à remplacer le texte entre crochet par l’emplacement du fichier PHPsend.php) :
include_once("<chemin vers l'API sur votre site web>");
Ensuite, vous devez établir une connexion vers votre serveur. Voici comment procéder :
$connec = new PHPsend(); $result = $connec->PHPconnect("<adresse du serveur>","<mot de passe PHPsend>","<port PHPsend>");
A ce stade là, la variable $result peut prendre les valeurs suivantes :
- 0 – aucune erreur, la connexion est établie
- 1 – PHPsend n’a pas pu se connecter au serveur
- 2 – le mot de passe est incorrect
Vous êtes maintenant prêt à envoyer une commande au serveur. Pour cela, rien de plus simple :
$connect->PHPcommand("<commande sans />");
Faites bien attention à ne pas mettre de slash (/) dans la commande ! Si tout s’est bien passé, PHPcommand renverra 0 sinon 1 si il y a eu une erreur (attention : ça n’inclut pas l’erreur “commande introuvable”).
Une fois toutes vos commandes envoyées, vous devez vous déconnecter du serveur :
$result = $connec->PHPdisconnect();
La variable $result peut alors être de deux valeurs :
- 0 si la déconnexion a bien réussie
- 1 si il y a eu une erreur lors de la déconnexion
Voilà, vous êtes fin prêts à créer de beaux sites web ! Si vous voulez perfectionner le plugin, vous pouvez en créer des améliorations ; tout ce que vous devez savoir se trouve ici et ici.
Mon dernier message n’a pas été pris en compte alors je poste à nouveau en vous conseillant d’utiliser jsonAPI qui est bien plus puissant.
J’ai fais un tuto ici : http://youtu.be/0BVX26V_VTA
Bonjour j’essaye depuis 2jour de configurer phpsend mais n’arrive a rien
quelqu’un pourait m’aider a trouver une solution via skype ?
je nai pas compri vou pouver reexpliquer svp
Bonjour
pourriez-vous faire un tuto video sur se plugins. Merci.
Car j’ ai testé de toute les façons que je connait en php et je n y arrive pas. il me met un page blanche tous le temps
bonjour
j’ai une petite question avec ce plug pouvons nous simplement nous exprimer du forum sur le serveur ?
Enfin, si le site se trouve sur le même serveur que le Minecraft, il y a toujours la possibilité d’envoyer une commande shell via php histoire de se simplifier un peu la tâche et d’éviter de faire tourner un plugin en plus ;-)
Super !!! je voulais créer un site web pour mon serveur et c’est geniale…
Un gros probleme de ce genres de page php c’est que tout est faillible! alors faites gaffe bloquez l’acces a ce genres de page sinon un rigolo ayant quelques connaisances en PhP pourrais acceder à ces pages et lancer la commande voulue!
exemple: Pour les boutiques (avoir le grade voulu ou autre sur le serveur sans payer!) Je prefere ne pas expliquer comment faire ceci. (c’est telement facile…)
Je vous déconseille ce plugin! utilisez en un autre.
…tout est dans le nom !
Salut à tous,
j’ai un petit problème, lors du restart après avoir mit le plugin dans le dossier “plugins”, aucun dossier/fichier config n’est créé.
Suis-je le seul ? Comment résoudre le problème ?
Merci d’avance !
Marche pas, j’ai beau essayé la version 0.9 avec bukkit 1.3.1-R1.0 (ce qui est prévu), mais au lancement du serveur il me sort plein d’erreurs.
http://pastebin.com/KJr0Fspv
screen + exec()
Si je ne m’abuse ce n’est pas $connect->PHPcommand(“”);
mais plutôt
$connec->PHPcommand(“”);
Hello ce plugin à l’air d’être super. Mais voici mon problème : J’ai bien inclue ma page :
include_once(‘include/send.php’);
Puis j’initialise la classe :
$connec = new PHPsend();
Mais quand je veut me connecter :
$result = $connec->PHPconnect(“127.0.0.1″,”mdp”,”11223″);
Et bien mon site se transforme en une page blanche … Pourquoi ?
Superbe ! Mais comment faire pour que lorsque la personne ai payée pour devenir VIP, et que 30 jours plus tard, une autre commande se tape automatiquement ?
tous ceux qui disent que cet articles est super, ben oui il l’est mais pas le plugin c’est connu depuis longtemps et sur mon serveur j’utilisais des plugins comme celui-ci(plutot un seul puisqu’il me permettait de : PHP=>serveur, serveur=>PHP) avec plus de fonctionalité, il suffit juste de trainer sur les sites de bukkit.
Ha aussi je m’attend a ce que les commentaires soit plein de “comment on fait ci-ça”, he bien je leurs répond : si on connais pas PHP alors on fait pas Point.
Et quand on a un site en html comment on fait?
Et ba tu apprends le PHP et tu refait ton site ;)
Pas besoin, au dessus du DOCTYPE, tu mer des balises
Petit bof … En effet, pour une boutique en ligne, il faut vérifier que le joueur est bien co … Impossible avec se plugin … Donc utilisation de deux plugins au minimum …
superbe découverte en creusent les bloc au dessus du nether tout au dessus il a des bloc de bedrock a la couche 128 donc chez mojang il son oublier le détail qu on pouvait étre juste qua 256 bloc de haut donc on peut construire au dessus de la bedrock au dessus du nether!
Très bonne API :)
Juste une question :
J’ai mon serveur qui tourne sur une machine chez moi qui reste allumée. La machine est sous windows 7. En gros, je peux installer wamp sur ce PC pour avoir un accès web dessus. Le seule truc c’est que j’aimerais savoir si je dois mettre le dossier du serveur au moins dans le dossier de wamp ou je peux le mettre n’importe où sur mon PC ?
Tu peux le mettre n’importe ou. C’est mieux si ton dossier serveur n’est PAS dans ton dossier WAMP, comme ça tu évites que des gens puissent fouiner dans tes dossiers plugins/config. :)
Ok merci pour la réponse :)
Sinon pour avoir les commandes a distance il y a aussi mcrcon qui permet tout simplement d’avoir acces a la console du serveur.
Pour moi ça ne marche pas!
Help me please!
Ce plug-in a vraiment l’air super, mais je n’arrive pas à l’installer! Dès que j’allume mon serveur, il me met un tas d’erreurs de type “java.net.” et ça marche pas!
Please! Help me!
Contacte moi, je t’aiderai: matthieu200157
Salut tout le monde j’aimerai savoir comment on fait pour intégrer mon serveur sur un site internet et qu’ est ce que sa change aussi merci :)
Contacte moi sur Skype et je te dirait comment intéger ton serveur sur un site et coder le site: ajoute a tes contacts: matthieu200157
Plugin vraiment très utile.
Mais n’aurais tu pas fais une erreur dans tes exemples de code ?
$con->PHPconnect
Où as tu déclaré la variable $con ? Je supose que c’est l’a variable contenant la référence vers l’obj PHPsend crée plus tot, soit :
$connec
Sinon pour ceux qui ne sont pas très à l’aise avec PHP il peut être utile de préciser que tout code PHP dois être entrer entre les balises:
Et aussi que les valeurs retournées peuvent servir directement dans des tests :
if($connec->PHPconnect(...)){
// Connexion réussie, ici
// les divers commandes
}else{
// Erreur
}
en parlant de plugin…
il serait bien que l’on invente un programme capable de configurer permission bukkit…
ca serait bien non??
Jetez un oeil à Websend, qui peut aussi faire l inverse, envoyer une commande à un script PHP.
(Je ne sais pas s’il est à jour)
Pour moi cet article c’est du chinois o.O
Pour moi pas du tout xD (je suis codeur)
Oh non ! un kikoo ! aide-nous super Hapistorique !
moué pk pas :D BONNE idée
Ceci est tres pratique, tu fais une page admin ou on peut controler le serveur.
Très utile, merci!
Dommage, l’hébergeur de mon site ne supporte pas le php :/
Super ! Ça c’est une bonne idée !
Sinon, il y a JSONAPI, il intègre la commande comme à partir d’une console, on peut quasiment tout récupérer à partir du serveur. Mais dédié seulement aux développeurs PHP confirmés, outil très puissant !!!!
Bon article sinon, je ne connaissais pas ;)
utile
Pratique pour ceux qui s’y connaissent et qui ont un hébergement web, car si on en as pas, ça ne marche pas a moins d’avoir un réseau local comme guppY et easyPHP mais dans ce cas, autant se connecter au panel du serveur :$…
Dans votre exemple votre première variable s’appelle $connec puis change de nom en $con puis en $connect et fini en $con .
Je pense que vous avez mâle taper votre code car tout c’est variable doivent avoir un nom identique .
Vous avez auss oubliez de parler des fonction PHPrecvMsg,PHPrecv qui permet de récupérer des infos des commandes envoyer tel que la comande list pour obtenir le nom de joueur sur le serveur .
Merci pour ce plugins ! ÉNORME ! Il va révolutionner mon système de don… Vive l’automatisme !
Merci encore à kittyPL pour ce merveilleux plugin
Yes! Yes! Yes! J’avais besoin de ça! C’est génial! C’est beaucoup plus simple que de passer par MySQL pour les boutiques, aucune faille de type injection (si, les failles XXS, mais c’est super simple à corriger)! Ah, excellent!
Si c’est juste les injections SQL qui te font peur elles sont pas plus difficiles à sécuriser que des failles XSS. Passe à PDO pour le SQL ça va te changer la vie :)
Très utile dès qu’on a comprit comment s’y prendre.
Très joli plugin, je vais faire des site open source avec ca, bien jouer a l’auteur
Bien pour executer des commandes quand nous ne sommes pas chez nous =]
Il y a aussi RemoteBukkit: plus pratique =P
Pourquoi faire un article sur PHPSend alors que y’a JSONAPI ? Un plugin semblable, mais mille fois plus complet, rapide, et efficace, capable d’une centaine de fonctions différentes. :)
Parce qu’un article sur JSONAPI aurait amené trop de “J’ai pas compris” :D
Ben JSONAPI apporte rigoureusement la même chose avec une de ses Method, après y’a une flopée d’autre Methods qui apportent d’autres fonctionnalités.. :)
+1, JSONAPI c’est la vie.
T’es trop fort prou mais bon faut bien tout montreer ;D
Si j’ai bien compris, ce plugin sert à envoyer des commandes à distances depuis par exemple un site web, c’est bien ça ?
Oui c’est sa
Woaw, pile poil mon truc, pour ma boutique en ligne du serveur, avec le kits… manuadd….
MERCI !!
Salut je ne comprend pas trop comment le crée une personne peut m’aider ou me le faire en me contactent sur skype : maxilien.faure
Je peux t’aider, je suis en train de le developper pour mon site