Création d'une plate forme d'une université (site web dynamique)

radhouane1977 Messages postés 1 Date d'inscription mercredi 20 mai 2009 Statut Membre Dernière intervention 23 avril 2010 - 23 avril 2010 à 18:25
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 - 23 avril 2010 à 19:29
Salut, SVP est ce qu'il y a quelqu'un qui peut m'aider ... je suis entrain de faire un site web d'une faculté universitaire ... j'ai pu faire la partie du super administrateur qui a l'accès à tous les tables du site même de la bibliothèque de la faculté les tables de la bibliothèque sont :(b_authors','b_books','b_book_author','b_book_keywords','b_categorie','b_editors','b_family','b_key_words','b_providers','b_type')et les autres tables ( pages, sections... et des autres tables aussi)mais je veux faire la partie administrateur reservée pour la bibliothécaire en cas s'il veux modifier ,supprimer ou ajouter un enregistrement dans la base de la bibliothèque j'ai déjà fait un code ça marche bien mais juste l'administrateur peut s'authentifier et il peut voir les noms des tables de la bibliothèque et s'il clique sur un nom d'une table rien ne s'affiche (je veux que s'il clique sur la table qu'il veut la changer ... un tableau de la base de données s'affiche qui contient tous les enregistrements de la table que j'ai choisi avec les options de modification,suppression ou ajout d'un enregistrement...le nom de ma base est fsegn contienne les tables suivantes :('b_authors','b_books','b_book_author','b_book_keywords','b_categorie','b_editors','b_family','b_key_words','b_providers','b_type')...voilà le code de fichier menu.php:
[b]<?php

// Si le super admin est connecté, on affiche son menu pour la gestion de la BD et de ses tables
if($usertype= ="SUPADMIN"){
page_menu_item("supadmin","Super administrateur","user_16.png");
if($page=="supadmin"){
$sql = "SHOW TABLES;";
$res = mysql_query($sql, $connection);
while($rec = mysql_fetch_row($res)){
section_menu_item($rec[0],$rec[0],"b_sbrowse.png","b_sbrowse.png");
}
}
}

// Menu des paramètres personnel de l'administrateur
if($usertype=="ADMIN"){
page_menu_item("admin","Bibliothécaire","user_16.png");
if($page=="admin"){
$sql = "show TABLES where tables_in_fsegn in('b_authors','b_books','b_book_author','b_book_keywords','b_categorie','b_editors','b_family','b_key_words','b_providers','b_type');";
$res = mysql_query($sql, $connection);
while($rec = mysql_fetch_array($res)){
section_menu_item($rec[0],$rec[0],"b_sbrowse.png","b_sbrowse.png");
}
}
}

$sql_1 = "SELECT * FROM pages WHERE status_id='1' ORDER BY ord;";
$res_1 = mysql_query($sql_1, $connection);
while($rec_1 = mysql_fetch_assoc($res_1)){
page_menu_item($rec_1["id"],$rec_1["title"],$rec_1["icon"]);
if($page==$rec_1["id"]){
$sql_2 = "SELECT * FROM sections WHERE page_id='".$rec_1["id"]."' AND status_id='1' ORDER BY ord;";
$res_2 = mysql_query($sql_2, $connection);
while($rec_2 = mysql_fetch_assoc($res_2)) section_menu_item($rec_2["id"],$rec_2["title"],$rec_2["icon"]);
}
}


?>/b

voilà aussi le code du fichier supadmin.inc.php:
<?php

// Récupération de la valeur de l'action en cours
if (isset($_GET["act"])) $act = $_GET["act"]; else $act="";
// Récupération de la clé de l'enregistrement en cours
if (isset($_GET["id"])) $id=$_GET["id"]; else $id="";
// Message d'erreur
$error_message="Un problème est survenue ! La requête suivante n'est pas exécutée.";

switch($act) {
case "sql" :
if(isset($_POST["send"])) {
$sql_string = $_POST["sql_string"];
$sql_string = str_replace("\'","'",$sql_string);
} else {
$sql_string = "";
}
break;

case "update" :
if(isset($_POST["send"])) {
$sql = "DESCRIBE $section;";
$res = mysql_query($sql, $connection);
$nb=0;
while($rec = mysql_fetch_row($res)){
$field=$rec[0];
$field_name[$nb]=$rec[0];
$input_value[$nb]=$_POST["$field"];
$nb++;
}
} else {
if($id!=""){
$sql = "DESCRIBE $section;";
$res = mysql_query($sql, $connection);
$nb=0;
while($rec = mysql_fetch_row($res)){
if($nb==0) $id_field=$rec[0];
$nb++;
}
$sql = "SELECT * FROM $section WHERE $id_field='$id' ;";
$res = mysql_query($sql, $connection);
while($rec = mysql_fetch_row($res)){
for($i=0 ; $i<$nb ; $i++){
$input_value[$i]=$rec[$i];
}
}
}
}
break;

case "add" :
if(isset($_POST["send"])) {
$sql = "DESCRIBE $section;";
$res = mysql_query($sql, $connection);
$nb=0;
while($rec = mysql_fetch_row($res)){
$field=$rec[0];
$field_name[$nb]=$rec[0];
$input_value[$nb]=$_POST["$field"];
$nb++;
}
} else {
$sql = "DESCRIBE $section;";
$res = mysql_query($sql, $connection);
$nb=0;
while($rec = mysql_fetch_row($res)){
$field=$rec[0];
$field_name[$nb]=$rec[0];
$input_value[$nb]="";
$nb++;
}
}
break;

case "drop" :
if(isset($_POST["send_yes"])) {
if($id!=""){
$sql = "DESCRIBE $section;";
$res = mysql_query($sql, $connection);
$nb=0;
while($rec = mysql_fetch_row($res)){
$field_name[$nb]=$rec[0];
$nb++;
}
}
}
break;
}

if($page=="supadmin"){
echo "Super administrateur";
if(!empty($section)) echo " > $section\n";
echo "
\n";
}
else
if($page=="admin"){
echo "Bibliothécaire";
if(!empty($section)) echo " > $section\n";
echo "
\n";
}

switch($act) {
case "" :
// Affichage d'un tableau montrant les enregistrement de la table en cours
if(!empty($section)){
//print_add_command($section,"top_arrow.png");
//echo "";
echo "";
echo " Insérer un nouvel enregistrement

\n";

$sql = "DESCRIBE $section;";
$res = mysql_query($sql, $connection);
echo "
\n";
echo "\n\";
echo \"----
\n\";
echo \" Actions |\n\";
$nb_att =-1;
while($rec = mysql_fetch_row($res)){
echo \" $rec[0] |\n\";
$nb_att++;
}
echo \"\n\";
$sql = \"SELECT * FROM $section;\";
$res = mysql_query($sql, $connection);
while($rec = mysql_fetch_row($res)){
echo \"----
\n\";
echo \"";
echo "";
echo "";
echo "";
echo ", \n\";
echo \"";
echo "";
echo "";
echo "";
echo ", \n\";
for($i=0 ; $i<=$nb_att ; $i++){
$field_value = $rec[$i];
if(strlen($field_value)>100) $field_value = substr($field_value,0,100).\" ...\";
$field_value=str_replace(\"<\", \"<\", $field_value);
$field_value=str_replace(\">\", \">\", $field_value);
if($field_value!=\"\") echo \"$field_value, \n\";
else echo \", \n\";
}
echo \"\n\";
}
echo "
\n";
echo "
\n";
//print_add_command($section);
}
break;

// Dans le d'une mise à jour d'un enregistrement d'une table
case "update" :
if(isset($_POST["send"])) {
$sql="UPDATE $section SET ";
for($i=0 ; $i<$nb ; $i++){
$input_value[$i]=str_replace("'","\'",$input_value[$i]);
$sql .= "$field_name[$i]='$input_value[$i]'";
if($i<$nb-1) $sql .=", ";
}
$sql .=" WHERE $field_name[0]='$id';";
$res = mysql_query($sql, $connection);
if($res) redirect("./?page=supadmin§ion=$section");
else {
echo "$error_message

\n";
echo " $sql

\n";
include("supadmin_forms.inc.php");
}
} else include("supadmin_forms.inc.php");
break;

// Dans le d'un ajout d'un nouvel enregistrement dans la table en cours
case "add" :
if(isset($_POST["send"])) {
$sql ="INSERT INTO $section VALUES (";
for($i= 0 ; $i<$nb ; $i++){
$input_value[$i]=str_replace("'","\'",$input_value[$i]);
$sql .= "'$input_value[$i]'";
if($i<$nb-1) $sql .=", ";
}
$sql .=") ;";
$res = mysql_query($sql, $connection);
if($res) redirect("./?page=supadmin§ion=$section");
else {
echo "$error_message

\n";
echo " $sql

\n";
include("supadmin_forms.inc.php");
}
} else include("supadmin_forms.inc.php");
break;
// Dans le d'une suppression d'un enregistrement
case "drop" :
if(!(isset($_POST["send_yes"])) or (isset($_POST["send_no"]))) include("supadmin_forms.inc.php");
if(isset($_POST["send_yes"])) {
$sql ="DELETE FROM $section WHERE $field_name[0]= '$id' ;";
$res = mysql_query($sql, $connection);
if($res) redirect("./?page=supadmin§ion=$section");
else {
echo "$error_message

\n";
echo " $sql

\n";
}
}
if(isset($_POST["send_no"])) {
redirect("./?page =supadmin§ion= $section");
}
break;

// Dans le cas d'une requête SQL par saisie directe
case "sql" :
echo "Requête SQL
\n";
$k = 0;
if(isset($_POST["send"])) {

while($sql_string!=""){
$point_virgule = strpos($sql_string,";");
$requete[] = substr($sql_string, 0, $point_virgule+1);
$sql_string = substr($sql_string, $point_virgule+2, strlen($sql_string));
$res = mysql_query($requete[$k], $connection);
if(!$res) {
echo "$error_message

\n";
echo " $requete[$k]

\n";
}
$k ++;
}
//header("Location: ./sql_admin.php");
} else include("supadmin_forms.inc.php");
break;
}
?>

et voilà le code du fichier supadmin_form.inc.php:
<?php

if($act =="sql") {
echo "\n<form method="post" action="./?page=$page&section=$section&act=$act">\n";
echo "
\n";
echo "\n";
echo "
\n";
echo "<fieldset>\n";
print_input("textarea", "Requête", "sql_string", $sql_string, "20","70");
echo "</fieldset>\n";
echo "
\n";
echo "\n";
echo "
\n";
echo "</form>\n";
}

if($act=="update" or $act=="add") {
if($act=="update") $lblsend="Mettre à jour";
if($act=="add") $lblsend="Ajouter";
echo "\n<form method="post" action="./?page=$page&section=$section&act=$act&id=$id">\n";
echo "
\n";
echo "\n";
echo "
\n";

echo "<fieldset>\n";
$sql = "DESCRIBE $section;";
$res = mysql_query($sql, $connection);
$i=0;
while($rec = mysql_fetch_row($res)){
// Nom de l'attribut en cours de la table $section
$attribute_name=$rec[0];
// Type et taille de l'attribut en cours de la table $section
$attribute_type = $attributes_types[$section][$attribute_name];
// S'il s'agit d'une clé étrangère, on ramène la source (table, attribut_1 -> value, attribut_2 -> option)
if($attribute_type=="foreignkey" or $attribute_type=="order") {
$source_table = $tables_sources[$section][$attribute_name];
$source_value = $values_sources[$section][$attribute_name];
$source_option = $options_sources[$section][$attribute_name];
$source_condition = $conditions_sources[$section][$attribute_name];
} elseif($attribute_type=="icon") {
$source_table = "$section"; // Pour tester si la valeur de l'icone est déjà renseignée dans la table ou pas
} else {
$source_table = "";
$source_value = "";
$source_option = "";
$source_condition = "";
}

$attribute_size = $attributes_sizes[$section][$attribute_name];
// Appel à la fonction print_input
print_input($attribute_type,$attribute_name,$attribute_name, $input_value[$i], $attribute_size, $source_table, $source_value,$source_option, $source_condition);
$i++;
}
echo "</fieldset>\n";

echo "
\n";
echo "\n";
echo "
\n";
echo "</form>\n";
}

if($act=="drop") {
echo "\n<form method="post" action="./?page=$page&section=$section&act=$act&id=$id">\n";
echo "
\n";
echo "\n";
echo "\n";
echo "
\n";
echo "<fieldset>\n";
echo "Etes-vous sûr de vouloir supprimer cet enregistrement ?

\n";
echo "</fieldset>\n";
echo "
\n";
echo "\n";
echo "\n";
echo "
\n";
echo "</form>\n";
}

?>
merci cordialement si vous pouvez m'aider svp c trés urgent

1 réponse

kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
23 avril 2010 à 19:29
Ca ne te tente pas de poster encore une centaine de messages identiques ? Ca serait cool, surtout en les postant sous des comptes différents.




Kohntark -
0
Rejoignez-nous