Beste scripters,
Voor ons bedrijf ben ik bezig een Intranet in PHP op te zetten. Voor één van de pagina's op ons Intranet is een mappenstructuur gewenst. Omdat ik wat moeite heb DOM-structuren te combineren met PHP (wat volgens mij niet eens kan), tracht ik via onderstaande code toch een mappenstructuur te bouwen. Dat gaat al behoorlijk aardig moet ik zeggen.
Echter, het probleem waar ik tegen aan loop is het volgende:
Voor het kunnen bepalen van het al dan niet weergeven van het icoontje "Map_filled.gif" of "Map_empty.gif" (zie elders in deze code), laat ik PHP de waardes van twee tabellen vergelijken. Door $obj->lower_token uit de parenttabel "intra_docs1" te vergelijken met $obj->upper_token uit de childtabel "intra_docs2" wil ik afvangen of op de pagina een gevulde of juist een lege map getoond moet worden.
Wat nu niet lukt is dat de if-lus waarin bepaald wordt wat voor type map-icoon getoond moet worden de gevonden waarden uit de tabellen sequentieel vergelijkt. Maar wat ik wil is dat de if-lus naar de gehele set kijkt.
In andere woorden:
"Als er in deze map een onderliggende map aanwezig is, toon dan het icoontje Map_filled.gif, zoniet toon dan het icoontje Map_empty"
Gaarne suggesties...
<?php
<?php
include_once("session_check.php");
?>
<table width="100%" border="0">
<?php
if($_GET[page] == "documenten")
{
$map = "root";
} else {
$map=$_GET[map];
}
$table++;
if(isset($_GET[table]))
{
echo "THE TABLE TO SEARCH HEEFT WAARDE: " . $table . "<BR>";
}
echo "THE TABLE HEEFT WAARDE: " . $table . "<BR>";
$uppertable = "intra_docs" . $table;
$innertable = $table;
$innertable++;
$subtable = "intra_docs" . $innertable;
$lowertoken=$_GET[lowertoken];
$uppertoken=$_GET[uppertoken];
// SQL statement op de tabel van de opgevraagde mapinhoud
$sql = "SELECT * FROM `$uppertable` WHERE upper_token='$map' ORDER BY ID";
$result = mysql_query($sql) or die(mysql_error());
echo "SQL statement voor het tonen van de mappen op deze pagina: " . $sql . "<BR>";
$counter = 0;
$class = 0;
// SQL statement op de tabel van de onderliggende mappen
$subsql = "SELECT * FROM `$uppertable` AS u, `$subtable` AS l WHERE l.upper_token = u.lower_token";
$subresult = mysql_query($subsql) or die(mysql_error());
echo "SQL statement voor het tonen namen van de onderliggende mappen: " . $subsql . "<BR>";
while ($obj = mysql_fetch_object($subresult)) {
$sublower_token = $obj->lower_token;
$subupper_token = $obj->upper_token;
echo "Sub lower token van " . $subtable . " = " . $sublower_token . "<BR>";
echo "<b>Sub upper token van " . $subtable . " = " . $subupper_token . "</b><BR>";
}
while ($obj = mysql_fetch_object($result)) {
$token = $obj->lower_token;
echo "Token van " . $uppertable . " = " . $token . "<BR>";
$upid=$obj->id;
$delid=$obj->id;
$class ^= 1;
/////////////////
///even een test
if($token == $subupper_token){
echo "<font color=\"#0000FF\">hier is een match: </font>" . $token . " en " . $subupper_token;
} else {
echo "<font color=\"#FF0000\">hier ontbreekt die match: </font>" . $token . " en " . $subupper_token;
}
/////////////////////
echo "<tr valign='top'>";
if($obj->img == "map")
{
echo $obj->lower_token . " is map";
if($token == $subupper_token){
echo "
<td class='blok" .$class. "'>
<img src=\"images/icons/Map_filled.gif\" border=\"0\"></a>
</td>
";
} else {
echo "
<td class='blok" .$class. "'>
<img src=\"images/icons/Map_empty.gif\" border=\"0\"></a>
</td>
";
}
} else if($obj->img == "up")
{
echo "<td class='blok" .$class. "'>
<a href=\"index.php?page=maphierarchy&map=$obj->upper_token&lowertoken=$obj->lower_token&upid=$upid\" title=\"Niveau hoger\">
<img src=\"images/icons/Upper.gif\" border=\"0\"></a>
</td>
";
} else {
echo "<td class='blok" .$class. "'>
hier lukt iets niet!
</td>
";
}
echo "
<td width=\"99%\" class=\"blok" .$class. "\" onmouseover=\"className='blokover" .$class. "'\" onmouseout=\"className='blok" .$class. "'\"><a href=\"index.php?page=maphierarchy&map=$obj->lower_token&table=$table&lowertoken=$obj->lower_token&upid=$upid\" title=\"$obj->lower_token\">$obj->mapname</a></td>
</tr>";
$counter++;
}
?>
</tr>
</table>
<?php echo "" . $counter . " mappen gevonden."; ?>
?>
Vriendelijk dank,
Gsorsnoi
403 views