Hello everybody,
I have topics and each topic has many subtopics and each subtopic has articles.
Ok, I'm listing all the topic names and select a topic name to show all the subtopics under them.Now, I select a subtopic name and press the button delete.If there are no articles under this subtopic then the subtopic is deleted else it has to show me the message that there are articles under them.I found a simple error which I'm not able to figure it out that is, when I select a subtopic name which has articles under it and press the button delete, I get the mesg: There are articles existing under this sub-topic. and also it shows me "QUERY IS EMPTY"
How can I avoid this one??
One more question:
I think this is the code which executes when i press the button deleteOf course when there are articles under the subtopic)
if ( mysql_num_rows( $result_sub ) > 0 )
{
echo 'There are articles existing under this sub-topic';
}else
Now, the above echo st appears in an other form and I need to use the browsers back button in-order to come back where I was before.
can i remove the echo st and simply add java-script alert window.I tried but it does'nt seems to work.
I think this is not working because, it shows me the query is empty every time I press the delete button when there are articles under the subtopic.Could somebody please figure out where the error would be.
Thanks in advance
<?
include "../dbconnection.dam"
?>
<?php
// if you have chosen subtopics to delete
if(isset($HTTP_POST_VARS['action'])){
$subtopic_id = $HTTP_POST_VARS['SUBTOPIC_ID'];
$qry3 = "SELECT TOPIC_ID FROM subtopic WHERE SUBTOPIC_ID='$subtopic_id'";
$result_3 = mysql_query($qry3) or die(mysql_error()."<br />SQL: $qry3" );
// begin the query
foreach( $HTTP_POST_VARS[ "to_delete" ] as $key => $value )
{
$sql = "SELECT SUBTOPIC_ID FROM articles WHERE SUBTOPIC_ID = '" . $value . "'";
$result_sub = mysql_query($sql) or die(mysql_error()."<br />SQL: $sql" );
if ( mysql_num_rows( $result_sub ) > 0 )
{
echo 'There are articles existing under this sub-topic';
}else
// there are no articles - safe to delete
$qry4 = "DELETE FROM subtopic WHERE subtopic_id IN('" . implode("','", $HTTP_POST_VARS['to_delete']) . "')";
while( $row_4 = mysql_fetch_row($result_3) ){
if( isset($HTTP_POST_VARS[$row_4->SUBTOPIC_ID]) ){
// the checkboxes were named for the subtopic_id
$qry4 .= "OR SUBTOPIC_ID=".$row_4->SUBTOPIC_ID;
// add this subtopic to the query string
}
}
mysql_query($qry4) or die(mysql_error());
}
}
// get the list of topic names
$qry1="SELECT TOPIC_ID, TOPIC_NAME FROM topic ORDER BY TOPIC_NAME";
$result_1=mysql_query($qry1) or die(mysql_error());
// if you have chosen a topic, get the list of subtopics
if(isset($HTTP_POST_VARS['TOPIC_ID'])){
$qry3="SELECT SUBTOPIC_ID, SUBTOPIC_NAME, TOPIC_ID FROM subtopic WHERE TOPIC_ID='".$HTTP_POST_VARS['TOPIC_ID']."' ORDER BY SUBTOPIC_NAME";
$result_3=mysql_query($qry3) or die(mysql_error());
}
?>
<HTML>
<!--- create the topic select box --->
<form name="topic_form" action="<?=$PHP_SELF?>" method="post">
<select name="TOPIC_ID">
<option value="">Choose a topic</option>
<?
while($row=mysql_fetch_object($result_1)){
echo "<option value=\"".$row->TOPIC_ID."\">".$row->TOPIC_NAME."</option>";
}
?>
</select>
<input type="submit" value="Set Topic">
</form>
<!--- include topic_ID for continuity --->
<input type="hidden" name="TOPIC_ID" value="<?=$HTTP_POST_VARS['TOPIC_ID']?>">
</form>
<!--- create the list of subtopics --->
<form name="delete_form" action="<?=$PHP_SELF?>" method="post">
<?
if(isset($HTTP_POST_VARS['TOPIC_ID'])){
while($row_3=mysql_fetch_object($result_3)){
// subtopics named for the subtopic_id (aids in ease of retrieval after submittal
echo "<input type=\"checkbox\" name=\"to_delete[]\" value=\"".$row_3->SUBTOPIC_ID."\">".$row_3->SUBTOPIC_NAME."<BR>";
}
}
?>
<input type="hidden" name="TOPIC_ID" value="<?=$HTTP_POST_VARS['TOPIC_ID']?>">
<!--- "action" defined so there is a definite switch to determine if things should be deleted --->
<input type="hidden" name="action" value="delete">
<input type="submit" value="Delete">
<FORM>
<INPUT TYPE="Button" VALUE="Back"
onClick="window.location= 'menu.php' ">
</FORM>
</form>
</HTML>