|
|
|
|
Bonjour,
Le PC que j'utilise est un AMD 1300 MHz avec 256 Mo Ram et son système d'exploitation est Windows 2000 Server.
Je suis en train de réaliser une SGBD avec MySQL, PHP et Apache.
Je voudrais afficher une jointure dans une table.
Voici la jointure :
<html>
<head>
<title>Jointure</title>
<style type="text/css" >
table {border-style:double;border-width: 3px;border-color: red;background-color: white;}
</style>
</head>
<body>
<?php
include("connex.inc.php");
$idcom=connex("btscp","myparam");
$requete3="SELECT nom, prenom, id_contrat, datedebut, datefin, salairebrut, typecontrat, dureeperiodeessai, emploiprecisoccupe, dureehebdomadaire, caissederetraitecomplementaire, organismedeprevoyance FROM etudiant, contrat WHERE contrat.id_etudiant = etudiant.id_etudiant";
$result=@mysql_query($requete3,$idcom);
if(!$result)
{
die('Requête invalide : ' . mysql_error());
}
else
{
$nbcol=mysql_num_fields($result);
$nbart=mysql_num_rows($result);
echo "<table border=\"1\">";
echo "<th>nom</th> <th>prenom</th> <th>identifiant du contrat</th> <th>Date début</th> <th>Date fin</th> <th>Salaire brut</th> <th>Nature du contrat</th> <th>Type du contrat</th> <th>Durée de la période d'essai</th> <th>Emploi précis occupé</th> <th>Durée hebdomadaire</th> <th>Caisse de retraite complémentaire</th> <th>Organisme de prévoyance</th>";
while($ligne=mysql_fetch_array($result,MYSQL_NUM))
{
echo "<tr>";
foreach($ligne as $valeur)
{
echo "<td> $valeur </td>";
}
echo "</tr>";
}
echo "</table>";
}?>
</body>
</html>
<html>
<head>
<title>Lecture de la table Etudiant</title>
<style type="text/css" >
table {border-style:double;border-width: 3px;border-color: red;background-color: white;}
</style>
</head>
<body>
<BODY>
<BR>
<CENTER><IMG src="logo.gif" border=0 width=880 height=310></CENTER>
<BR><BR>
<?php
include("connex.inc.php");
$idcom=connex("btscp","myparam");
$requete="SELECT * FROM etudiant";
$result=@mysql_query($requete,$idcom);
if(!$result)
{
die('Requête invalide : ' . mysql_error());
}
else
{
$nbcol=mysql_num_fields($result);
$nbart=mysql_num_rows($result);
echo "<h1> Tous nos étudiants de BTS</h3>";
echo "<h3> L'Institut Européen des Affaires compte aujourd'hui $nbart etudiant(s) en BTS</h4>";
echo "<table border=\"1\">";
echo "<th>identifiant de l'étudiant</th> <th>Nom</th> <th>Prénom</th> <th>titre</th> <th>Adresse</th> <th>Ville</th> <th>Code postal</th> <th>Téléphone fixe</th> <th>Téléphone portable</th> <th>Mail</th> <th>Date de naissance </th> <th>Lieu de naissance</th> <th>Nationalité</th> <th>Situation de famille</th> <th>Formation choisie</th> <th>Situation précédente</th> <th>Diplôme</th> <th>Permis de conduire</th> <th>Véhicule</th> <th>Date inscription</th> <th>Contrat(s)</th>";
while($ligne=mysql_fetch_array($result,MYSQL_NUM))
{
echo "<tr>";
foreach($ligne as $valeur)
{
echo "<td> $valeur </td>";
}
echo "</tr>";
}
echo "</table>";
$date = date("H:i:s",time());
?>
<center><h3>
<? echo "Il est $date";?>
</h3></center>
<?
}
?>
</body>
</html>
Configuration: Windows 2000 Firefox 2.0.0.1
En faite je voudrais insérer dans la table etudiant (la 2eme page de code), un lien dans la colonne "Contrat" vers la jointure que j'ai créer dans une autre table.
|
Je voudrais insérer un lien vers le tableau HTML de mon code #1 (la jointure entre ma table etudiant et contrat) dans une colonne (colonne "Contrat") du tableau HTML de mon code #2 (table etudiant).
|
Bonjour,
foreach($ligne as $valeur)
{
echo "<td> $valeur </td>";
}
echo "<td><a href='contrat.php?id_etudiant=".$ligne['id']."'>voir contrat</a></td>";
echo "</tr>";
}
echo "</table>";2 : permettre à la page de ta jointure de n'afficher les données que pour 1 étudiant.
Modifie ta requête comme ceci : $requete3="SELECT nom, prenom, id_contrat, datedebut, datefin, salairebrut, typecontrat, dureeperiodeessai, emploiprecisoccupe, dureehebdomadaire, caissederetraitecomplementaire, organismedeprevoyance FROM etudiant, contrat WHERE contrat.id_etudiant = etudiant.id_etudiant";
if (isset($_GET['id_etudiant']))
$requete3 .= " AND etudiant.id_etudiant='".$_GET['id_etudiant']."'";
$result=@mysql_query($requete3,$idcom);
Xavier |
Merci Xavier, pour la 2eme chose je l'ai fait.
<html>
<head>
<title>Saisissez les coordonnées de letudiant</title>
</head>
<body>
<form action= "<?php echo $_SERVER['PHP_SELF'];?>" method="post"
enctype="application/x-www-form-urlencoded">
<fieldset>
<legend><b>Coordonnées de l`étudiant</b></legend>
<table>
<tr><td>Nom : </td><td><input type="text" name="nom" size="40" maxlength="30"/></td></tr>
<tr><td>Prénom : </td><td><input type="text" name="prenom" size="40" maxlength="30"/></td></tr>
<tr><td>Titre : </td><td><select name="titre">
<option value=""></option>
<option value="Mademoiselle">Mademoiselle</option>
<option value="Madame">Madame</option>
<option value="Monsieur">Monsieur</option>
</select>
</td></tr>
<tr><td>Adresse : </td><td><input type="text" name="adresse" size="40" maxlength="60"/></td></tr>
<tr><td>Ville : </td><td><input type="text" name="ville" size="40" maxlength="40"/></td></tr>
<tr><td>Code Postal : </td><td><input type="text" name="codepostal" size="40" maxlength="10"/></td></tr>
<tr><td>Téléphone fixe : </td><td><input type="text" name="telephonefixe" size="40" maxlength="20"/></td></tr>
<tr><td>Téléphone portable : </td><td><input type="text" name="telephoneportable" size="40" maxlength="20"/></td></tr>
<tr><td>Mail : </td><td><input type="text" name="email" size="40" maxlength="50"/></td></tr>
<tr><td>Date de naissance : </td><td><input type="text" name="datenaissance" value="0000-00-00" size="40" maxlength="99"></td></tr>
<tr><td>Lieu de naissance : </td><td><input type="text" name="lieunaissance" size="40" maxlength="50"/></td></tr>
<tr><td>Nationalité : </td><td><input type="text" name="nationalite" size="40" maxlength="50"/></td></tr>
<tr><td>Situation de famille : </td><td><select name="situationfamiliale">
<option value=""></option>
<option value="Marie">Marié</option>
<option value="Celibataire">Célibataire</option>
<option value="Autre">Autre</option>
</select>
</td></tr>
<tr><td>Formation choisie : </td><td><select name="formationchoisie">
<option value=""></option>
<option value="BTS Management des Unites Commerciales">BTS Management des Unités Commerciales</option>
<option value="BTS Assistante de Gestion PME PMI">BTS Assistance de Gestion PME PMI</option>
<option value="BTS Negociation et Relation Client">BTS Négociation et Relation Client</option>
<option value="BTS Comptabilite et Gestion des Organisations">BTS Comptabilité et Gestion des Organisations</option>
<option value="BTS Transport">BTS Transport</option>
</select>
</td></tr>
<tr><td>Situation précédente : </td><td><input type="text" name="situationprecedente" size="40" maxlength="50"/></td></tr>
<tr><td>Diplôme : </td><td><input type="text" name="diplome" size="40" maxlength="50"/></td></tr>
<tr><td>Permis de conduire : </td><td><select name="permisdeconduire">
<option value=""></option>
<option value="Oui">Oui</option>
<option value="Non">Non</option>
<option value="En cours">En cours</option>
</select>
</td></tr>
<tr><td>Véhicule : </td><td><select name="vehicule">
<option value=""></option>
<option value="Oui">Oui</option>
<option value="Non">Non</option>
</select>
</td></tr>
<tr><td>Date d`inscription : </td><td><input type="text" name="dateinscription" value="0000-00-00" size="40" maxlength="50"/></td></tr>
<tr>
<td><input type="reset" value=" Effacer "></td>
<td><input type="submit" value=" Envoyer "></td>
</tr>
</table>
</fieldset>
</form>
<?php
include('connex.inc.php');
if(!empty($_POST['nom'])&& !empty($_POST['prenom'])&& !empty($_POST['adresse'])&& !empty($_POST['ville']))
{
$id_etudiant="\N";
$nom=mysql_escape_string($_POST['nom']);
$prenom=mysql_escape_string($_POST['prenom']);
$titre=mysql_escape_string($_POST['titre']);
$adresse=mysql_escape_string($_POST['adresse']);
$ville=mysql_escape_string($_POST['ville']);
$codepostal=mysql_escape_string($_POST['codepostal']);
$telephonefixe=mysql_escape_string($_POST['telephonefixe']);
$telephoneportable=mysql_escape_string($_POST['telephoneportable']);
$email=mysql_escape_string($_POST['email']);
$datenaissance=mysql_escape_string($_POST['datenaissance']);
$lieunaissance=mysql_escape_string($_POST['lieunaissance']);
$nationalite=mysql_escape_string($_POST['nationalite']);
$situationfamiliale=mysql_escape_string($_POST['situationfamiliale']);
$formationchoisie=mysql_escape_string($_POST['formationchoisie']);
$situationprecedente=mysql_escape_string($_POST['situationprecedente']);
$diplome=mysql_escape_string($_POST['diplome']);
$permisdeconduire=mysql_escape_string($_POST['permisdeconduire']);
$vehicule=mysql_escape_string($_POST['vehicule']);
$dateinscription=mysql_escape_string($_POST['dateinscription']);
//Requète SQL
$requete4="INSERT INTO etudiant
VALUES('$id_etudiant','$nom','$prenom','$titre','$adresse','$ville','$codepostal','$telephonefixe','$telephoneportable','$email','$datenaissance','$lieunaissance','$nationalite','$situationfamiliale','$formationchoisie','$situationprecedente','$diplome','$permisdeconduire','$vehicule','$dateinscription')";
$idcom=connex('btscp','myparam');
$result=mysql_query($requete4,$idcom);
if(!$result)
{
echo mysql_errno();
echo mysql_error();
echo "<script type=\"text/javascript\">
alert('Erreur : ".mysql_error()."')</script>";
}
else
{
echo "<script type=\"text/javascript\">
alert('Les coordonnées de l`étudiant sont enregistrées. Son numéro d'étudiant est : ".mysql_insert_id()."')</script>";
}
}
else {echo "<h3>Formulaire à compléter!</h3>";}
?>
</body>
</html>
Merci. |
Ok merci, c'est bon ca me met bien le lien cool par contre j'ai une erreur maintenant qui est :
|
Ah ben oui, encore désolé, j'avais mal regardé !
|
Ca marche ! Merci !
echo "<tr>";
foreach($ligne as $valeur)
{
echo "<td> $valeur </td>";
}
echo "</tr>";
}
echo "</table>";
Merci pour votre aide. |
Voici l'adresse de la page qui s'ouvre quand je clique sur le lien :
|
Mmmmh, ça devrait être bon, là, pourtant...
$requete3="SELECT nom, prenom, id_contrat, datedebut, datefin, salairebrut, typecontrat, dureeperiodeessai, emploiprecisoccupe, dureehebdomadaire, caissederetraitecomplementaire, organismedeprevoyance FROM etudiant, contrat WHERE contrat.id_etudiant = etudiant.id_etudiant";
if (isset($_GET['id_etudiant']))
$requete3 .= " AND etudiant.id_etudiant='".$_GET['id_etudiant']."'";
$result=@mysql_query($requete3,$idcom);
? Tu peux mettre un "echo $requete3" juste avant le $result=... pour voir à quoi ressemble la requête exactement ? |