Valid XHTML    Valid CSS2    

Listing du fichier deuxHist.php

 

00001     <?php
00002     
include("std.php") ;
00003     
debutPage
("exemple mysql histoire","strict") ;
00004     
00005     
################################################################################
00006     
00007     
function
exAh($undl) {
00008     
00009     
################################################################################
00010     
00011     # lecture de la ligne indiquée et renvoi des deux champs
00012     
00013     
$avant
= $undl - 1 ;
00014     
$req
= "select date,evenement from sen_HIST order by date limit $avant,1" ;
00015     
$res
= mysql_query($req) ;
00016     
$tab
= mysql_fetch_array($res) ;
00017     
$dateR
= $tab["date"] ;
00018     
$eventR
= $tab["evenement"] ;
00019     return(array(
$dateR
,$eventR)) ;
00020     
00021     }
# fin de fonction
00022     
00023     
h1
("Questionnaire en histoire") ;
00024     
00025     
## exemple incorrect pour test :
00026     # mysql_connect("localhote","anonymous","anonymous") or die("probleme de connexion") ;
00027     
$crC
= mysql_connect("localhost","anonymous","anonymous") ;
00028     
00029     
## anonymousConnect("statdata") ;
00030     
00031     # 1. on teste si on arrive à se connecter
00032     
00033     
if (!
$crC) {
00034     
h2
("connexion impossible") ;
00035     
finPage() ;
00036      exit(-
1) ;
00037     } ;
# fin de si
00038     
00039     # si on est ici, c'est que la connexion est OK
00040     
00041     # 2. on teste donc si on arrive à ouvrir la base de données
00042     
00043     
$crUB
= mysql_select_db("statdata") ; # mettre statdatb pour tester avec base incorrecte
00044     
00045     
if (!
$crUB) {
00046     
h2
("base de données inaccessible") ;
00047     
finPage() ;
00048      exit(-
1) ;
00049     } ;
# fin de si
00050     
00051     # si on est ici, c'est que la base de données est ouverte
00052     # détermination du nombre de lignes dans la table
00053     
00054     
$req
= "select count(date) from sen_HIST" ;
00055     
$res
= mysql_query($req) ;
00056     
$tab
= mysql_fetch_array($res) ;
00057     
$n
= $tab["count(date)"] ;
00058     
00059     
$nbl
= comptageSqlSimple("date","sen_HIST") ;
00060     
00061     
## pour vérification : echo " il y a $n lignes dans la table =? $nbl " ;
00062     
00063     # tirage aléatoire entre 0 et n-1 si n est le nombre de lignes
00064     # de la table
00065     
00066     
$nah
= rand(1,$n) ; # nah : nombre au hasard
00067     
00068     /* *******************************************************************************************
00069     
00070     # ceci est l'ancienne version, avant qu'on n'écrive la fonction exAh
00071     p() ;
00072     $ndl = $nah + 1 ;
00073     echo " exercice correspondant à la ligne $ndl soit LIMIT $nah,1" ;
00074     $req = "select date,evenement from sen_HIST order by date limit $nah,1" ;
00075     $res = mysql_query($req) ;
00076     $tab = mysql_fetch_array($res) ;
00077     $date1 = $tab["date"] ;
00078     $event1 = $tab["evenement"] ;
00079     echo " d1 $date1 ; e1 : $event1 " ;
00080     finp() ;
00081     
00082     ********************************************************************************************** */
00083     
00084     
$tdr
= exAh($nah) ;
00085     
$date1
= $tdr[0] ;
00086     
$event1
= $tdr[1] ;
00087     
00088     
$ath
= rand(1,$n) ; # autre tirage au hasard
00089     # tant que les numéros sont égaux, on retire au hasard
00090     
while (
$ath==$nah) { $ath = rand(1,$n) ; } ;
00091     
/*
00092     p() ;
00093     $anl = $ath + 1 ;
00094     echo " autre exercice correspondant à la ligne $anl soit LIMIT $ath,1" ;
00095     $req = "select date,evenement from sen_HIST order by date limit $ath,1" ;
00096     $res = mysql_query($req) ;
00097     $tab = mysql_fetch_array($res) ;
00098     $date2 = $tab["date"] ;
00099     $event2 = $tab["evenement"] ;
00100     echo " d2 $date2 ; e2 : $event2 " ;
00101     finp() ;
00102     */
00103     
$tdr
= exAh($ath) ;
00104     
$date2
= $tdr[0] ;
00105     
$event2
= $tdr[1] ;
00106     
00107     
# l'exercice consiste à afficher la date de la première ligne
00108     # et l'évènement de la deuxième
00109     
00110     # $date1 = 800 ;
00111     # $event2 = "Mort de JA" ;
00112     
00113     
h2
(" complétez le tableau suivant ") ;
00114     
00115     
form
("non.php","get","onsubmit='return false'") ;
00116     
00117     
table
(1,10,"cadre collapse") ;
00118     
entetesTableau
("date évènement") ;
00119     
00120     
tr() ;
00121     
td
() ; echo $date1 ; fintd() ;
00122     
td
() ; input_text("event1"," ") ; fintd() ;
00123     
fintr() ;
00124     
00125     
tr() ;
00126     
td
() ; input_text("date2"," ") ; fintd() ;
00127     
td
() ; echo $event2 ; fintd() ;
00128     
fintr() ;
00129     
00130     
tr() ;
00131     
td
("C","",2) ;
00132     
input_submit
("envoi") ;
00133     
fintd() ;
00134     
fintr() ;
00135     
00136     
fintable() ;
00137     
finform() ;
00138     
00139     
finPage() ;
00140     
?>
00141     

00142     
00143     
00144     
00145     
00146     
00147     
00148     
00149     

Pour ne pas voir les numéros de ligne, ajoutez &nl=non à la suite du nom du fichier.

 

 

retour gH    Retour à la page principale de   (gH)