Attention les entrées dans la base de donnée ne sont pas sécurisée !

FIXME This page is not fully translated, yet. Please help completing the translation.
(remove this paragraph once the translation is finished)

Base de donnée : Envoyer, Modifier, Recevoir

Mise en place

Il vous faut mettre en place avant tout une base de donnée qui gère le format SQL ainsi qu'un serveur web qui permet l'utilisation de PHP.

Dans la base de donnée il nous faudra une Table : gd_table

Dedans nous aurons deux colonnes id et text

  • id : Un identifiant unique pour chaque valeur.
  • text : La valeur qui sera lue, écrite, modifier.

Voici de quoi faire la table comme dit au dessus en l'important dans la base de donnée :

SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for `gd_table`
-- ----------------------------
DROP TABLE IF EXISTS `gd_table`;
CREATE TABLE `gd_table` (
  `id` int(255) NOT NULL AUTO_INCREMENT,
  `text` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=116 DEFAULT CHARSET=latin1;

Vous pourrez télécharger le fichier du projet en bas de cette page.

PHP

La partie PHP va permettre de faire le pont entre la base de donnée et l'application ou le jeux fait avec Gdevelop. Il vous faut mettre les identifiants de connection à la base de donnée et le nom de cette dernière.

Si vous avez sur le même serveur la base de donnée et l'application faite avec GD alors mettez localhost dans la variable $ip

Le code contient une ligne avec header qui autorise l'accès localement, donc vous pouvez faire le test sur un serveur local avec Wampserver par exemple.

<?php 
$ip = "";
$identifiant = "";
$motdepasse = "";
$basededonnee = "";

//Autorise les requetes venant de tel origine
header("Access-Control-Allow-Origin: http://localhost:2828");

// Connection avec MySQL 
$db = mysql_connect($ip, $identifiant, $motdepasse); 
// Sélection de la base de donnée
mysql_select_db($basededonnee,$db); 

//Echappement des caractères spéciaux
$type = mysql_real_escape_string($_POST['type']);
$id = mysql_real_escape_string($_POST['id']);
$text = mysql_real_escape_string($_POST['text']);


switch($type){

	case "add":
		$sql = "INSERT INTO gd_table(text) VALUES ('". $text ."')";
		$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
		mysql_close();
			
	break;

	case "get":
		$sql = 'SELECT id,text FROM gd_table WHERE id = "'. $id .'"';
		$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
		while($data = mysql_fetch_assoc($req)){ 
			echo '{"id":"'. $data['id'] .'","text":"'. $data['text'] .'"}';
		}
		mysql_close(); 
		
	break;

	case "del":
		$sql = "DELETE FROM gd_table WHERE (id='". $id ."')";
		$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
		mysql_close();
		
	break;

	default:
		echo "Demande non prise en charge.";
	break;

}
?>

Scène et objets

Avant tout il vous faudra activer deux extentions, pour cela cliquez sur Extentions dans le Gestionnaire de projets sur la gauche par défaut. Ensuite cochez Objet Texte et Objet d'entrée de texte puis fermez.

La scène est configurée avec 6 objets comme suit :

Conditions / Actions

Il faut ensuite faire le couple d'actions/conditions dans GDevelop:

Téléchargement

Voici les fichiers du projet.

exemple_basededonnee.rar