<?php
/*************************************************************
* The MyDB librairy and applications are product of SQLFusion
* It may be used and/or distributed under the terms of the Q Public
* License (QPL) version 1.0, enclosed in the file licence.txt.
****************************************************************/
/** MyDATA Version 0.9 **/
/** Author Philippe Lewicki **/
require("mydatalocal.inc.php3");
$connect = new connect;
$connect->start();
$db = $connect->db ;
$DispTable = new mydataTable;
if (isset($wherequery)) {
$wherequery = stripslashes($wherequery) ;
list ($name_key, $num_key) = explode("=", $wherequery) ;
/* echo "--".$name_key."-=-".$num_key."-" ;*/
}
$tablelinked = $table ;
$tables = mysql_list_tables($db);
$num_tables = @mysql_numrows($tables);
$j = 0;
echo "<table border=$DispTable->cfgBorder>\n";
echo "<th> </th>";
echo "<th > </th>";
$bgcolor = $DispTable->cfgBgcolorOne;
$i % 2 ? 0: $bgcolor = $DispTable->cfgBgcolorTwo;
while ($j < $num_tables)
{
$table = mysql_tablename($tables, $j);
$connect->table = $table ;
if ($table == $tablelinked) { echo $table." :"; } else {
$result = mysql_db_query($db, "SHOW KEYS FROM ".$table);
if (!$result)
{
mysql_die();
}
else
{
if (mysql_num_rows($result)>0)
{ $linked = "No" ;
for ($i=0 ; $i<mysql_num_rows($result); $i++)
{
$row = mysql_fetch_array($result);
// echo $name_key."==".$row["Column_name"];
if ($row["Column_name"] == $name_key) // Vérifie si on trouve la clé primaire dans cette table.
{
$linked = "Yes" ;
}
if ($row["Key_name"] == "PRIMARY") // on récuper la clé primaire de cette table.
{
$name_key2 = $row["Column_name"] ;
}
} // fin du for on a passé toute les clés en revue
if ($linked == "Yes") {
// Teste une selection sur la table. Est elle vide pour la clé primaire
$restest = mysql_db_query($db, "select * from $table where $wherequery") ;
// On affiche le nom de la table avec un lien sur l'affichage de sont contenu ou l'insertion d'un nouvelle enregistrement
?>
<tr bgcolor="<?php echo $bgcolor;?>">
<td> <b><?php echo $table; ?> </b></td>
<?
$query = "?db=$db&table=$table&goto=".urlencode($GLOBALS[REQUEST_URI])."&secondary_key=$wherequery";
if (!($restest) || !(mysql_num_rows($restest)>0)) {
?>
<td><a href="<?php echo $cfgAddPage.$query;?>"><?php echo $strInsertNewRow; ?></a></td>
<?
} else {
// affichage de la table
echo "\n<td>" ;
if ($tablelinked == "visiteur") {
$DispTable->cfgAddRecord = false;
$DispTable->cfgOrderTable = false ;
$DispTable->cfgLinkTableRecord = false;
$DispTable->cfgEditRecord = false ;
$DispTable->cfgDeleteRecord = false ;
$DispTable->hidefield[idlogs] = 1 ;
$DispTable->hidefield[idvisiteur] = 1 ;
$DispTable->displaytable($connect, $restest);
} else {
$DispTable->cfgAddRecord = false;
$DispTable->cfgOrderTable = false ;
$DispTable->cfgLinkTableRecord = true;
$DispTable->showpicture[bphoto] = 0 ;
$DispTable->displaytable($connect, $restest);
?>
<a href="<?php echo $cfgAddPage.$query;?>"><?php echo $strInsertNewRow; ?></a></td>
<?
}
}
} // fin du linked
} //fin du if numrows
} // fin du else result
} // fin de la table différente de table linked
echo "\n</tr>\n" ;
$j++;
} // fin du while table
echo "</table>\n";
?>