-reviews: bevat uiteraard alle info van de review zelf, waaronder naam (kolom "album") en ID (kolom "ID" (PRIMARY))
-tags: bevat alle informatie van de tags, bestaat uit twee kolommen, met name de naam van de tag ("tag") en en de ID van de tag ("ID" (PRIMARY))
-reviewTag: bevat 2 kolommen: "reviewID" en "tagID" (beide PRIMARY)
In deze laatste tabel komen dan de ID van de review en de ID van de tag. Zo kan een tag aan een review worden toegewezen. Helaas gebeurt er niets (tabellen reviewTag en tags blijven leeg ,desondanks geen foutmeldingen). Dit is de code.
<?
$tags = explode(";",$_POST['tags']);
$count = count($tags);
echo $_POST['tags'];
for ($i=0; $i<$count; $i++)
{
$query = mysql_query("SELECT `ID` FROM `tags` WHERE `tag` = '".$tags[$i]."'") or die(mysql_error());
while($output = mysql_fetch_row($query))
{
if (isset($query))
{
$tagID = mysql_query("SELECT `ID` FROM `tags` WHERE `tag` = '".$tags[$i]."'") or die(mysql_error());
$output = mysql_fetch_assoc($tagID);
mysql_query("INSERT INTO `reviewtag` (reviewID,tagID) VALUES ('".$_POST['ID']."','".$output['tagID']."')") or die (mysql_error());
}
else
{
mysql_query("INSERT INTO `tags` (tag) VALUES ('".$tag[$i]."')") or die (mysql_error());
$tagID = mysql_query("SELECT `ID` FROM `tags` WHERE `tag` = '".$tags[$i]."'") or die(mysql_error);
mysql_query("INSERT INTO `reviewtag` (reviewID,tagID) VALUES ('".$_POST['ID']."','".$tagID."')") or die (mysql_error());
}
}
}
echo "De review is succesvol toegevoegd.";
?>
Waaraan het ligt weet ik niet, maar ik concludeer wel dat het probleem zich ergens in de while loop afspeelt: ik heb ter controle al geprobeerd iets te echo'en in de loop, maar dat lukte nooit. Misschien kunnen jullie daaruit iets afleiden?
Alvast bedankt!