Leaderboard
Popular Content
Showing content with the highest reputation on 08/04/2014 in Messages
-
Bonjour à tous, Je vais vous partagez un bout de code (que vous pouvez transformer en fonction) assez utile pour faire des requêtes POST (non pas avec du html) tout en PHP <3 à quoi ça sert? quand vous désirez faire un système distant un peu sécurisé ou quand quelqu'un vous ennuie et qu'il n'a pas d'anti-robot sur sa page d'inscription... /* Contexte: ayant bricolé un serveur apache et installé PHP avec beaucoup de mal vous n'arrivez pas à installer un serveur SMTP (gestion d'envoie et de réception d'email). Alors pour pallier à ce problème vous utilisez un script distant sur un ftp ayant un serveur smtp vous devez effectuer une requête POST avec des variable: l'espéditeur, le destinataire, le sujet ($sujet), le contenu ($content) et une clé de sécurité. le serveur répond "OK" si l'envoie c'est fait, on récupère la réponse dans la variable $result */ $data = array( 'exp' => "[email protected]", // expéditeur 'dest' => "[email protected]", // destinataire 'subject' => $sujet, // sujet 'content' => $content, // contenu du mail 'key' => 0258410025412002541200255210 // clé de sécurité ); $url = "http://mars073.be/smtp.phps"; // url sur la quelle il faut envoyer la requête $data_url = http_build_query($data); $data_len = strlen($data_url); $x = array ('content'=>file_get_contents ($url, false, stream_context_create (array ('http'=>array ('method'=>'POST', 'header'=>"Connection: close\r\nContent-Type: application/x-www-form-urlencoded\r\n". "Content-Length: $data_len\r\n", 'content'=>$data_url)))), 'headers'=>$http_response_header ); $result = $x['content']; if ($result == "OK") { echo "L'envoie a été un succés."; } else { echo "t'as foiré #YOLO."; } Bonne programmation à tous! Cordialement, Mars0731 point
-
Bonjour à tous, Aujourd’hui je vais vous montrer comment coder un moteur de recherche de base, vous pouvez donc aussi bien améliorer la structure de vos tables que la condition de recherche elle même. Contexte: Le moteur de recherche sert à trouver un joueur et afficher ses statistiques. Structure table: CREATE TABLE `players` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `guild` text NOT NULL, `token` int(11) NOT NULL, PRIMARY KEY (`id`) ) AUTO_INCREMENT=1 ; Le formulaire de recherche (search.php): <form action="./search.php" method="GET"> <label for="name">Nom du joueur</label> <input type="text" name="name"> <input type="submit" value="Rechercher"> </form> Je ne m'attarde pas sur le html vu que c'est un tuto php/my-sql. à la suite du code html vous allons ajouter du php: <table width="100%"> <tr> <th>#</th> <th>Nom</th> <th>Points</th> </tr> <?php $page = 0; if (isset($_GET['name']) { $page = 1; // Page par défaut affichée $np_page = 25; // Nom de résultat par page $name = addslashes($_GET['name']); // suppression faille sql $icxn = mysqli_connect("127.0.0.1", "root", "toor", "game"); //connexion mySQLi // vérification du numéro de la page si elle est indiqué dans l'url en "?page=n" if (isset($_GET['page'])&&is_numeric($_GET['page'])&& $_GET['page']>0&&$_GET['page']<9999999) $page = $_GET['page']; $fourchette = ($page - 1) * $np_page; $iquery = mysqli_query($icxn, "SELECT * FROM `players` WHERE `name` LIKE '%$name%' ORDER BY `name` ASC LIMIT $fourchette, $np_page"); while ($char = mysqli_fetch_array($iquery)) { echo <<<LINE <tr> <td>{$char['id']}</td> <td><b>{$char['name']}</b></td> <td>{$char['token']}</td> </tr> LINE; } } ?> </table> <?php if ($page!=0) { echo "page(s): "; $iquery_count = mysqli_query($icxn, "SELECT * FROM `players` WHERE `name` LIKE '%$name%'"); $count = mysqli_nums_rows($iquery_count); for ($i = 1; $i < $count/$np_page; $i++) { echo '<a href="./search.php?page='.$i.'">'.$i.'</a> '; } } ?> Conseil pour améliorer: -Si la table est beaucoup avec votre moteur faite une colonne de plus où il y a une simplification des caractères (ex: "é" => "e"; "â" => "a"; etc). -Attention aux caractères html utilisiez la fonction strip_tag() ou autre sur ce qui causer des faille xss par exemple si le client peu choisir le nom de son personnage et mettre du code html dedans c'est mort. -Supprimez les caractères "%" et "_" si ils sont présent dans $name et instauré une limite au niveau du nombre de caractères pour la recherche exemple: minimum 4 caractères, pour évites de charger trop de chose. Version pdo pour les gens qui aiment la pdo: <table width="100%"> <tr> <th>#</th> <th>Nom</th> <th>Points</th> </tr> <?php $page = 0; if (isset($_GET['name']) { $page = 1; // Page par défaut affichée $np_page = 25; // Nom de résultat par page $name = $_GET['name']; $cxn = new PDO('mysql:host=127.0.0.1;dbname=game', 'root', 'toor'); //connexion mySQL // vérification du numéro de la page si elle est indiqué dans l'url en "?page=n" if (isset($_GET['page'])&&is_numeric($_GET['page'])&& $_GET['page']>0&&$_GET['page']<9999999) $page = $_GET['page']; $fourchette = ($page - 1) * $np_page; $query = $cxn->prepare("SELECT * FROM players` WHERE `name` LIKE '%:name%' ORDER BY `name` ASC LIMIT :fourchette, :npp"); $query->bindValue(':name', $name, PDO::PARAM_STR); $query->bindValue(':fourchette', $fourchette, PDO::PARAM_INT); $query->bindValue(':npp', $np_page, PDO::PARAM_INT); $query->execute(); while ($char = $query->fetch()) { echo <<<LINE <tr> <td>{$char['id']}</td> <td><b>{$char['name']}</b></td> <td>{$char['token']}</td> </tr> LINE; } } ?> </table> <?php if ($page!=0) { echo "page(s): "; $query_count = $cxn->prepare("SELECT * FROM `players` WHERE `name` LIKE '%:name%'"); $query_count->bindValue(':name', $name, PDO::PARAM_STR); $query_count->execute(); $count = $query_count->rowCount(); for ($i = 1; $i < $count/$np_page; $i++) { echo '<a href="./search.php?page='.$i.'">'.$i.'</a> '; } } ?> Bonne programmation à tous! Cordialement, Mars0731 point
-
C'est tout simple, il y a une virgule en trop. /* File: fn_welcomeNotification.sqf Description: Called upon first spawn selection and welcomes our player. */ format["Bienvenue %1, Liser se message car il est important!",name player] hintC [ "Bienvenue sur le Serveur De la TeamRFF", "Règle Tout troll EST STRICTEMENT INTERDIT sous de ban", "Le ts=(teamspeak) L'adresse(l'ip):176.31.94.219 Merci de le rejoindre pour question rp ou non rp!", "Les recruttement de pliciers sont ouvert vener faire vos candidatur sur le Ts!", "Le staff:Admin Commandant:jujulien37,Mathys,Yves=Admin", "Vener amuser vous c'est le principale ah oui si vous vouler devenir donator contacter 1 admin !! Merci!", "Vener nous rejoindre la TeamRFF(TeamRp For Fun) Vener nous rejoindre et amuser vous bien sur notre Serveur coordiallement LeStaff" ]; Et voila.1 point
-
1 point
-
C'est le Ping et pas le pink et c'est normal qui soit à 2500, ça me le fais aussi en local. Peut tu m'envoyer une screenshot de ton arma3server.exe quand tu l'as lancer ?1 point
-
Si tu as télécharger la dernière version du jeu, le serveur c'est aussi mit à jour, malheureusement je ne vois pas ce qui peut ne pas marcher1 point
-
1 point
-
1 point
-
1 point
-
Ok, tu as bien ouvert le port ? et la mission que tu as mit dans "MPMISSION", elle se nomme bien "edgekiller_altislife_rpg.altis" ?1 point
-
Ca doit être le fichier config qui se trouve dans le dossier cfg, envoi moi ce que tu as dedans1 point
-
Salut, Malheureusement je n'ai encore jamais vu de serveur Altis Life hébergé sur un VPS, c'est bizarre quand lorsque tu lances "Lancer Altis Life.bat" ça t'ouvre le jeu ... ça doit être un problème au niveau du VPS, tu as bien ouvert les ports ? (3017)1 point
-
Salut ! Pour le codeur je ne peu pas faire grand chose sachant que je suis déjà sur un projet de serveur. Et pour le garage, quelques questions : • As-tu déjà fait des modifications au niveau des scripts/map ? Si oui lesquels ? • Tu es sous un hébergeur (Vilayer) ou en local (Sur ton PC) ? • Ta base de données contient bien la table Vehicle ? Si oui, envoi moi une screenshot de la table pour que je puisse voir les données à l'intérieur ! On verra la reste par la suite1 point
