Réservations en ligne

Petit nouveau ! | 1 Messages

25 janv. 2012, 16:00

Bonjour à tous(tes).
Nous venons de créer un modeste théâtre de poche (40 places) et nous voudrions mettre en place un système de réservations en ligne. Le problèmes c'est que nous sommes pas trop pires en théâtre, mais complètement nuls en php :oops:
Dans l'idéal, il faudrait que les internautes puissent cliquer sur les places qu'ils choisissent sur un plan, que ça alimente une base de données, que la base enregistre nom, prénom, mail et les places choisies.
Une fois les places choisies (et payées, le top =D> !), il faudrait que, sur la page de réservation, les places sélectionnées apparaissent comme indisponibles.
Je vous explique pas le chantier à mettre en place pour un vieux de + 60 ans comme moi #-o ==> Au secours les jeunes (et peut-être aussi les moins jeunes
:lol: pour me donner un coup de main !!!

Mammouth du PHP | 804 Messages

25 janv. 2012, 17:42

Bonjour,

C’est pas difficile du tout, tu n'a besoins de que de 2 tables « membre » et une ou tu ajouteras les places réservées uniquement, ensuite dans ta page tu crée une boucle avec le nombre de place que dispose ton théâtre et tu rends disponible uniquement les places n'ayant pas un ID via un tableau associatif que tu auras créé avec ta table « place ».

au passage il n'y a pas que des jeunes ici :non: :mrgreen:

Dog

Sarla t
Invité n'ayant pas de compte PHPfrance

26 janv. 2012, 07:24

Bonjour,

C’est pas difficile du tout, tu n'a besoins de que de 2 tables « membre » et une ou tu ajouteras les places réservées uniquement, ensuite dans ta page tu crée une boucle avec le nombre de place que dispose ton théâtre et tu rends disponible uniquement les places n'ayant pas un ID via un tableau associatif que tu auras créé avec ta table « place ».

au passage il n'y a pas que des jeunes ici :non: :mrgreen:

Dog
Merci beaucoup pour ta réponse très rapide.
Je vois bien le principe, mais comment ça s'écrit tout ça en php ? Cela fait des jours que je rôde sur Internet, et je ne trouve rien :( Pourtant, il doit bien y avoir d'autres personnes comme moi qui organisent des petits spectacles pour leurs assos. Dur, dur le bénévolat :?

:D Je me disais bien aussi qu'il ne devait pas y avoir que des jeunes ici. Donc avec toi, nous sommes deux moins jeunes... :lol:

Mammouth du PHP | 804 Messages

26 janv. 2012, 10:44

Disons que tu n'a pas assez de demande pour trouver un code tout prêt sur Internet, c'est quand même quelques chose de spécifique, tu devras le développer toi même ou passer par un codeur qui aime le théâtre pour te le faire gratuitement. :mrgreen:
D’ailleurs je me souviens avoir crée il y à une dizaine d'années un code de ce type pour les médecins, j'ai jamais réussi à leur vendre et du coup c'est passer en archive puis à la poubelle :mrgreen: :mrgreen: :mrgreen:

Sarla t
Invité n'ayant pas de compte PHPfrance

26 janv. 2012, 13:36

...
D’ailleurs je me souviens avoir crée il y à une dizaine d'années un code de ce type pour les médecins, j'ai jamais réussi à leur vendre et du coup c'est passer en archive puis à la poubelle :mrgreen: :mrgreen: :mrgreen:
Quel dommage :? C'est vrai qu'il y a une dizaine d'années, on n'était moins regardant sur le recyclage. Ca serait aujourd'hui, tu pourrais le recycler :)
Je vais essayer de le faire, mais il va falloir que je prévois beaucoup, mais alors beaucoup, d'aspirine #-o
En attendant je suis preneur d'idées et de ch'ti bouts de code :wink:

Mammouth du PHP | 790 Messages

26 janv. 2012, 15:03

une petite vidéo qui pourrait peut être t'aider: http://www.grafikart.fr/tutoriels/jquer ... picker-272
Les fautes de grammaire et d'orthographe contenu dans mes postes sont sous copyright, vous pouvez les utiliser pour un usage personnelle mais vous ne devrez en aucun cas les utiliser a des fins commercial sans une autorisation écrite de ma part.

Mammouth du PHP | 804 Messages

26 janv. 2012, 15:36

Petit exemple:
imaginons que tu crée 2 tables :
1 => Table des places réservées avec le numéro du client
2 => Les clients

Je te propose la première table pour les clients et on y ajoute 2 clients pour nos essais

Code : Tout sélectionner

CREATE TABLE IF NOT EXISTS `source_theatre_client` ( `clt_ID` smallint(5) NOT NULL auto_increment, `clt_nom` char(30) NOT NULL, `clt_prenom` char(30) NOT NULL, PRIMARY KEY (`clt_ID`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ; INSERT INTO `source_theatre_client` (`clt_ID`, `clt_nom`, `clt_prenom`) VALUES (1, 'depond', 'gerard'), (2, 'maurice', 'boucherie');

Puis la table des places réservées, pour exemple j'en ai bloqué deux avec nos deux gugusses de la table si dessus

Code : Tout sélectionner

CREATE TABLE IF NOT EXISTS `source_theatre_place` ( `res_ID` smallint(5) NOT NULL auto_increment, `res_NumPlace` smallint(5) NOT NULL, `res_Numclient` smallint(4) NOT NULL, PRIMARY KEY (`res_ID`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ; INSERT INTO `source_theatre_place` (`res_ID`, `res_NumPlace`, `res_Numclient`) VALUES (1, 20, 1), (2, 34, 2);

Premier essai à vide
Il nous reste donc plus cas créer un boucle qui va nous générer le tableau des places vide pour l'instant

$cell= 0;	

$week= 0;

$monTableau.= "<table>";

for( $n = 1 ; $n <= 40 ; $n++ ){
 
         $monTableau.= ($cell == 0)? "<tr>\n" : "";

         $monTableau.= ($disponibilite[$n]!="")? "<td>$n</td>\n" : "<td></td>\n";
		 
         $cell ++;
		
         $monTableau.= ($cell == 5)? "</tr>\n" : "";
	     
		 $cell = ($cell == 5)? 0 : $cell;
		 
}

echo $monTableau;

$monTableau.= "</table>";

Si je ne dis pas de bêtise tu dois te retrouver avec un tableau de 40 places numéroté sur 5 colonnes



Maintenant on va créer la requete qui va nous fournir les informations concerant les places réservées et modifier notre tableau avec Du css

donc le petit css

Code : Tout sélectionner

<style type="text/css"> <!-- table{width:400px;} td{width:25%;text-align:center} tr{height:25px} .verte{ color:#009900; } .rouge{ color: #FF0000; } --> </style>
et notre code php final
mysql_connect($SQL_HOST,$SQL_Compte,$SQL_Password);
mysql_select_db($SQL_Database);

// ************* récupères les places déjà réservées ****************
$query = mysql_query("SELECT * FROM source_theatre_place WHERE 1 ORDER BY res_ID ASC");

$nbplaces = @mysql_num_rows($query);
echo "nous avons $nbplaces place(s) réservée(s)"; // pour le fun :p

while($row = mysql_fetch_array($query)){

    $DB_res_ID = $row['res_ID'];
    $DB_res_NumPlace = $row['res_NumPlace'];
    $DB_res_Numclient = $row['res_Numclient']; 
	
	/* je cree mon tableau associatif */
	$disponibilite[$DB_res_NumPlace] = $DB_res_Numclient;

} 

$cell= 0;	
$week= 0;

$monTableau.= "<table>";

for( $n = 1 ; $n <= 40 ; $n++ ){
 
         $monTableau.= ($cell == 0)? "<tr>\n" : "";
		 
         $monTableau.= ($disponibilite[$n]!="")? "<td class='rouge'>$n<br />place reserv&eacute;e</td>\n" : "<td class='verte'>$n<br />place dispo</td>\n";
		 
         $cell ++;
		
         $monTableau.= ($cell == 5)? "</tr>\n" : "";
	     
		 $cell = ($cell == 5)? 0 : $cell;
		 
}

echo $monTableau;

$monTableau.= "</table>";

?>

amuse toi bien, pense à nous montrer ton boulot :wink: