0% found this document useful (0 votes)
35 views11 pages

Correction Etude de Cas 2013

The document contains the code for a car rental website. It includes PHP code to connect to a database, query data from various tables, and generate dynamic web pages for categories, models, reservations, and authentication. It also includes code to export category data to an XML file.

Uploaded by

ayoubkarkouri20
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views11 pages

Correction Etude de Cas 2013

The document contains the code for a car rental website. It includes PHP code to connect to a database, query data from various tables, and generate dynamic web pages for categories, models, reservations, and authentication. It also includes code to export category data to an XML file.

Uploaded by

ayoubkarkouri20
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

Corrigé de la proposition de l'étude de cas 2013

Dossier 1

MLD

Garagistre(Numcontrat,RS,ville)

Entretien(Numero,date,kilometrage,#numcontrat,#codetypeentretien ,#Numimat)

Vehicule(NumImat,pv,carburant,modele)

Typevehicule(codecategorie,categorie)

Typevehicule(codetype,typevehicule)
Partie c++

#include<iostream.h>
#include<conio.h>
class entretien
{int numimat;
char *type;
public:
entretien(){numimat=55123;type="peugeot308";}
void affiche(){cout<<numimat<<"----"<<type<<endl;}
void fixe(int a,char *b){numimat=a;type=b;}
};
class reparation:public entretien
{char *ref,*desig;
public:
reparation();
void affiche();
char* getpiece();
};
reparation::reparation():entretien()
{ref="ax60k";desig="bougie";}
void reparation::affiche()
{entretien::affiche();
cout<<ref<<"----"<<desig<<endl;}
char* reparation:: getpiece(){return ref;}
void main()
{reparation a;
a.affiche();
cout<<"REF="<<a.getpiece();
getch();
}
Dossier 2
1- LAN : distance de quelques mètres à quelques Km
WAN : distance de quelques dizaines de Km à quelques 100Km

2- Concentrateur : couche physique.


Routeur : couche réseau.

3- Les classes utilisées sont B et C.

4- Entre routeur et PC, il faut croiser 1 et 3 puis 2 et 6 +faire schéma.

5- Adresses intranet : 172.16.0.0/16 et 192.168.62.0/24


Adresses publiques : 195.115.90.16/28 et 193.252.19.0/24

6- @IP valides : 195.115.90.17 à 195.115.90.30

@IP de diffusion: 195.115.90.31

Masque de sous-réseau : 255.255.255.240

7- Adresse réseau : 192.168.0.0 à 192.168.255.0 /24

8- a- résoudre un nom de domaine pleinement qualifié en @IP et inversement.


Dossier 3 :

3.1) 5 pts

<?php

@mysql_connect("localhost","zianeAdmin","car2013") or die("erreur serveur");

@mysql_select_db("zianecar") or ("err base");

?>

3.2) 12 pts

<?php

include "connexion.php";

$res = @mysql_query("select * from categorie") or die("Erreur requête1");

if(!isset($_GET['liste_cat'])){

$ln = mysql_fetch_array($res);

$idcat = $ln['idcat'];

else $idcat = $_GET['liste_cat'];

mysql_data_seek($res,0);

echo "<table border=0><tr><td align='right'>Catégorie

</td>";

echo "<form method='get' action='".$_SERVER['PHP_SELF']."'><td align='center'><select


name='liste_cat'>";

while($ln = mysql_fetch_array($res))

{ if($idcat==$ln['idcat'])

echo "<option value='{$ln['idcat']}' selected> {$ln['libelle']} </option>";


else echo "<option value='{$ln['idcat']}'>{$ln['libelle']}</option>";

echo "</select></td><td align='left'><input type='submit' value='Afficher les modèles' />

</td></form></tr>";

$req_prix = @mysql_query("select prix from categorie where idcat=$idcat") or die("Erreur requête2");

$p = mysql_fetch_row($req_prix);

$prix = $p[0];

echo "<tr><td colspan='3' align='center'>Prix: $prix DH/Jour</td></tr>";

//echo $idcat;

$mods = @mysql_query("select * from model where idcat=$idcat") or die("Erreur requête3");

while($mod = mysql_fetch_array($mods))

echo "<tr><td width='200'>{$mod['libellemod']}<br/>

<img src='images/{$mod['vignette']}' /></td>

<td width='200'><table>

<tr><td>Nombre de passager: </td><td>{$mod['nbplace']} </td></tr>

<tr><td>Nombre de portes: </td><td>{$mod['nbporte']} </td></tr>

<tr><td>Carburant: </td><td>{$mod['carburant']} </td></tr>

<tr><td>Climatisation: </td><td>{$mod['clim']} </td></tr>

</table>

<td width='200' valign='middle' align='center'> <a style='text_decoration:none'


href='reserver.php?mod={$mod['idmod']}'><img src='images/btn_reserver.jpg' width='90' /></a><td>

</tr>";
}

echo"</table>";

mysql_close();

?>

3.3) 9 pts

<?php

session_start();

include "connexion.php";

$idmod = $_GET['mod'];

$_SESSION['idmod'] = $idmod;

$res = @mysql_query("select libelle, libellemod from categorie c, model l

where c.idcat=l.idcat and idmod=$idmod") or die("Erreur requête1");

$cat = mysql_fetch_row($res);

echo "<table>

<tr><th colspan='2'>Saisissez les informations relatives à votre réservation</th></tr>

<tr><td colspan='2'></td></tr>

<tr><td width='160'>Catégorie : </td>

<td>{$cat[0]}</td></tr>";

echo "<tr><td>Modèle: </td>

<td>{$cat[1]}</td></tr>";

echo "<form method='post' action='authentifier.php'>";

echo "<tr><td>Agence de départ : </td><td><select name='agence_dep'>

<option value='Agence Casa'>Agence Casa</option>


<option value='Agence Settat'>Agence Settat</option>

<option value='Agence Marrakech'>Agence Marrakech</option>

</select></td></tr>";

echo "<tr><td>Agence d'arrivée : </td><td><select name='agence_ar'>

<option value='Agence Casa'>Agence Casa</option>

<option value='Agence Settat'>Agence Settat</option>

<option value='Agence Marrakech'>Agence Marrakech</option>

</select></td></tr>";

echo "<tr><td>Date de départ : </td><td><select name='jour_dep'>";

for($i=1; $i<=31;$i++)

echo "<option value=$i>$i</option>";

echo "</select>

<select name='mois_dep'>";

for($i=1; $i<=12;$i++)

echo "<option value=$i>$i</option>";

echo "</select>

<select name='annee_dep'>";

for($i=2013; $i<=2020;$i++)

echo "<option value=$i>$i</option>";

echo "</td></tr>";

echo "<tr><td>Nombre de jours : </td><td><input type='text' name='nbjours' size='3' /></td></tr>";

echo "<tr><td colspan='2' align='center'><input type='submit' value='Continuer' /></form></td></tr>";

echo "</table>";
mysql_close();

?>

3.4) 8 pts

<?php

session_start();

$d=$_POST['jour_dep']."/".$_POST['mois_dep']."/".$_POST['annee_dep'];

$_SESSION['date_dep']=$d;

$_SESSION['agence_dep']=$_POST['agence_dep'];

$_SESSION['agence_ar']=$_POST['agence_ar'];

$_SESSION['nbjours']=$_POST['nbjours'];

echo "<form method='post' action='confirmer.php'>";

echo "<center><table>

<tr><th colspan='2'>Authentification</th></tr>

<tr><td colspan='2'></td></tr>

<tr><td>Email : </td><td><input type='text' name='email' /></td></tr>

<tr><td>mot de passe : </td><td><input type='password' name='pwd' /></td></tr>

<tr><td colspan='2' align='center'><input type='submit' value='Valider'


/></td></tr></table></center>";

?>

3.5) 9 pts

<?php

session_start();

include('connexion.php');
$email = $_POST['email'];

$pwd = $_POST['pwd'];

$res = @mysql_query("select nom from client where email='$email' and pwd='$pwd'") or die("Erreur
requête client");

if(mysql_num_rows($res) == 0)

echo "Login et/ou mot de passe incorrects";

else {

$n = mysql_fetch_row($res);

$nom = $n[0];

$idmod = $_SESSION['idmod'];

$res = @mysql_query("select libelle, prix, libellemod from categorie c, model l

where c.idcat=l.idcat and idmod=$idmod") or die("Erreur


requêteModèle");

$catmod = mysql_fetch_row($res);

$cat = $catmod[0];

$prix = $catmod[1];

$mod = $catmod[2];

$total = $prix*$_SESSION['nbjours'];

echo "<table>

<tr><th align='left' colspan='2'>Informations de la réservation</th></tr>

<tr><td colspan='2'></td></tr>

<tr><td>Nom du client : </td><td>$nom</td></tr>

<tr><td>Date de départ : </td><td>{$_SESSION['date_dep']}</td></tr>


<tr><td>Nombre de jour(s) : </td><td>{$_SESSION['nbjours']}</td></tr>

<tr><td>Agence de départ : </td><td>{$_SESSION['agence_dep']}</td></tr>

<tr><td>Agence d'arrivée :</td><td>{$_SESSION['agence_ar']}</td></tr>

<tr><td>Catégorie :</td><td>$cat ( $prix DH/Jour)</td></tr>

<tr><td>Modèle :</td><td>$mod</td></tr>

<tr><td>Total de la réservation :</td><td>$total DH</td></tr>

<tr><td colspan='2'></td></tr>

<tr><td align='center'><input type='submit' value='Confirmer' /></td>

<td align='center'><input type='reset' value='Annuler' /></td></tr>

</table>";

mysql_close();

?>

3.6) 7 pts

<?php

include('connexion.php');

$res = @mysql_query("select * from categorie") or die("Erreur requête_catégories");

$f = fopen("categories.xml", "w");

fputs($f,"<?xml version='1.0' encoding='iso-8859-1' ?>\r\n");

fputs($f,"<categories>\r\n");

while($ln = mysql_fetch_array($res))

fputs($f,"<categorie>\r\n");
fputs($f,"\t<idcat>{$ln['idcat']}</idcat>\r\n");

fputs($f,"\t<libelle>{$ln['libelle']}</libelle>\r\n");

fputs($f,"\t<prix>{$ln['prix']}</prix>\r\n");

fputs($f,"</categorie>\r\n");

fputs($f,"</categories>");

fclose($f);

?>

You might also like