Page 1 of 1

Unlink problems

Posted: Mon Apr 03, 2006 9:00 am
by Femkecc
feyd | Please use

Code: Select all

and

Code: Select all

tags where appropriate when posting code. Your post has been edited to reflect how we'd like it posted. Please read:  [url=http://forums.devnetwork.net/viewtopic.php?t=21171]Posting Code in the Forums[/url] to learn how to do it too.[/color]


I m desperate ... tried so much, and it doesnt work. Please help me out with some tips and advice. Thank you so much!!!

The code doesnt show anymore.

Code: Select all

<form action="verwijderen.php" enctype="multipart/form-data" method="get" name="form">
Pagina:
<select name="page" id="page">
      <option value="banken">Banken</option>
      <option value="slaapkamers">Slaapkamers</option>
      <option value="fauteuils">Fauteuils</option>
      <option value="verlichting">Verlichting</option>
      <option value="salontafels">Salontafels</option>
      <option value="tapijten">Tapijten</option>
      <option value="vitrinekasten">Vitrinekasten</option>
      <option value="gordijnen">Gordijnen</option>
      <option value="wandkasten">Wandkasten</option>
      <option value="terrasmeubelen">Terrasmeubelen</option>
      <option value="dressoir">Dressoirs</option>
      <option value="kunst">Schilderijen</option>
      <option value="eet">Eetkamers</option>
      <option value="accesoire">Accessoires</option>
      <option value="haard">Open Haarden</option>
      <option value="av">Audio-Video </option>
      <option value="bontplaid">Bontplaids</option>
	  <option value="kussen">Kussens</option>
    </select>
	<br>
	Positie:<select name="position">
      <option value="01">1</option>
      <option value="02">2</option>
      <option value="03">3</option>
      <option value="04">4</option>
      <option value="05">5</option>
      <option value="06">6</option>
    </select><br><input name="submit" type="submit" value="ga">
	<input type="hidden" name="submitted" value="ja"><br><br>

<?php
include("../database.php");
if ($_SERVER['REQUEST_METHOD'] == 'POST' and isset($_POST['submitted']) and $_POST['submitted']== 'ja') {

$sql = mysql_query("SELECT * FROM foto WHERE page='{$_POST["page"]}' AND position='{$_POST["position"]}'") or die (mysql_error()); 

while( $show = mysql_fetch_array($sql))
{
 $id = $show[id];
 $page = $show[page];
 $url = $show[url];
 $dag = $show[dag];
 
 echo "$id - ";
 echo "$page <br>$url <br><br>";
 echo "<img src=\"../$url\" width=\"100\">  ";
 echo "<form action=\"verwijderen.php\" enctype=\"multipart/form-data\" method=\"post\" name=\"form2\">";
 echo "<input name=\"submit\" type=\"submit\" value=\"weggooien\">";
 echo "<input type=\"hidden\" name=\"verwijder\" value=\"delete\"></form>";
 }

 }
 
 if($_SERVER['REQUEST_METHOD'] == 'POST' and isset($_POST['verwijder']) and $_POST['verwijder']== 'delete'){
		$file = /www/".$url;
		if file_exists($file)) 
     	{ 
    	 unlink($file); 
     	} 
		else 
    	 { 
    	 echo $file.' bestaat niet eens'; 
     	} 

  }
 

?>

feyd | Please use

Code: Select all

and

Code: Select all

tags where appropriate when posting code. Your post has been edited to reflect how we'd like it posted. Please read:  [url=http://forums.devnetwork.net/viewtopic.php?t=21171]Posting Code in the Forums[/url] to learn how to do it too.[/color]

Posted: Mon Apr 03, 2006 9:02 am
by feyd
the posted code would have a parse error near /www/ (missing a double quote)

Quotes

Posted: Mon Apr 03, 2006 9:05 am
by Femkecc
The quotes r there in the actual code, just cut that piece out because of the privacy of the website :lol: Sorry! So this isnt the problem.

Posted: Mon Apr 03, 2006 9:15 am
by feyd
What's the actual problem then? "The code doesnt show anymore" doesn't tell me a thing.

Posted: Mon Apr 03, 2006 9:25 am
by Femkecc
the code didnt delete the right picture, it seemed to delete the first in the dropdown list. Then I changed the code so I would take the correct values (used global like _POST). That had as effect that the images stopped showing, and just skipped the total second form. Then I put the second form outside of the first if statement, and now the page doesnt even show anymore. I think Im close, but I dont see whats wrong in the if statement.

Re: Unlink problems

Posted: Mon Apr 03, 2006 9:28 am
by timvw
Prepend the following to your code and you'll get a couple of hints where you're code is viable for improvements...

Code: Select all

<?php
ini_set('error_reporting', E_ALL);
ini_set('display_errors', TRUE);
?>
Anyway, if you simply want it to work, your form uses the GET method for verwijder and your code looks in $_POST.

Posted: Mon Apr 03, 2006 1:08 pm
by Femkecc
feyd | Please use

Code: Select all

and

Code: Select all

tags where appropriate when posting code. Your post has been edited to reflect how we'd like it posted. Please read:  [url=http://forums.devnetwork.net/viewtopic.php?t=21171]Posting Code in the Forums[/url] to learn how to do it too.[/color]


I changed the things u suggested, and two other mistakes. The page shows now . But it still doesnt work ...

Code: Select all

<form action="verwijderen.php" enctype="multipart/form-data" method="post" name="form">
Pagina:
<select name="page" id="page">
      <option value="banken">Banken</option>
      <option value="slaapkamers">Slaapkamers</option>
      <option value="fauteuils">Fauteuils</option>
           <option value="av">Audio-Video </option>
      <option value="bontplaid">Bontplaids</option>
	  <option value="kussen">Kussens</option>
    </select>
	<br>
	Positie:<select name="position">
      <option value="01">1</option>
      <option value="02">2</option>
            <option value="06">6</option>
    </select><br><input name="submit" type="submit" value="ga">
	<input type="hidden" name="submitted" value="ja"><br><br>

<?php
include("../database.php");
if ($_SERVER['REQUEST_METHOD'] == 'POST' and isset($_POST['submitted']) and $_POST['submitted']== 'ja') {

$sql = mysql_query("SELECT * FROM foto WHERE page='{$_POST["page"]}' AND position='{$_POST["position"]}'") or die (mysql_error()); 

while( $show = mysql_fetch_array($sql))
{
 $id = $show[id];
 $page = $show[page];
 
 global $url; 
 $url = $show[url];
 $dag = $show[dag];
 
 echo "$id - ";
 echo "$page <br>$url <br><br>";
 echo "<img src=\"../$url\" width=\"100\">  ";
 echo "<form action=\"verwijderen.php\" enctype=\"multipart/form-data\" method=\"post\" name=\"form2\">";
 echo "<input name=\"submit\" type=\"submit\" value=\"weggooien\">";
 echo "<input type=\"hidden\" name=\"verwijder\" value=\"delete\"></form>";
 }

 }
 
 if($_SERVER['REQUEST_METHOD'] == 'POST' and isset($_POST['verwijder']) and $_POST['verwijder']== 'delete'){
		$filename = "../_images/".$url;
		if ( file_exists($filename) )
     	{ 
    	 unlink ($filename);
     	} 
		else 
    	 { 
    	 echo $filename.' bestaat niet eens'; 
     	} 

  }
 

?>
The error variables in the top of the page make me see the next errors:
Notice: Use of undefined constant id - assumed 'id' in bla bla
Notice: Use of undefined constant page - assumed 'pag
etc etc etc

Can it be the server?


feyd | Please use

Code: Select all

and

Code: Select all

tags where appropriate when posting code. Your post has been edited to reflect how we'd like it posted. Please read:  [url=http://forums.devnetwork.net/viewtopic.php?t=21171]Posting Code in the Forums[/url] to learn how to do it too.[/color]

Posted: Mon Apr 03, 2006 4:19 pm
by timvw
Femkecc wrote:

Code: Select all

$id = $show[id];
 $page = $show[page];
Should be:

Code: Select all

$id = $show['id'];
$page = $show['page'];
You might want to echo/log realpath($filename) before you try to unlink it.. I've got a feeling it's not what you think it is ;)

Posted: Tue Apr 04, 2006 3:24 am
by Femkecc
Thnx for your help! I think the path is correct (now) ... because it keeps deleting the same image over and over, the first options out of both drop downs. I tried globals, but that doesnt work either. Does anyone have some suggestions :)

Thanks!

Code: Select all

<?
if (!($option == "een") || !($option == "twee"))
{
?>

<form action="verwijderen.php" enctype="multipart/form-data" method="post" name="form">
Pagina:
<select name="page" id="page">
      <option value="banken">Banken</option>
      <option value="slaapkamers">Slaapkamers</option>
      <option value="fauteuils">Fauteuils</option>
      <option value="verlichting">Verlichting</option>
      <option value="salontafels">Salontafels</option>
      <option value="tapijten">Tapijten</option>
      <option value="vitrinekasten">Vitrinekasten</option>
      <option value="gordijnen">Gordijnen</option>
      <option value="wandkasten">Wandkasten</option>
      <option value="terrasmeubelen">Terrasmeubelen</option>
      <option value="dressoir">Dressoirs</option>
      <option value="kunst">Schilderijen</option>
      <option value="eet">Eetkamers</option>
      <option value="accesoire">Accessoires</option>
      <option value="haard">Open Haarden</option>
      <option value="av">Audio-Video </option>
      <option value="bontplaid">Bontplaids</option>
	  <option value="kussen">Kussens</option>
    </select>
	<br>
	Positie:<select name="position">
      <option value="01">1</option>
      <option value="02">2</option>
      <option value="03">3</option>
      <option value="04">4</option>
      <option value="05">5</option>
      <option value="06">6</option>
    </select><br><input name="submit" type="submit" value="ga">
	<input type="hidden" name="option" value="twee"><br><br>

<?php
}
if ($_SERVER['REQUEST_METHOD'] == 'POST' and isset($_POST['option']) and $_POST['option']== 'twee') 
 {
 global $page;
 $page = $_POST['page'];
 global $position; 
 $position = $_POST['position'];
 
 echo "<img src=\"../_images/$page$position.jpg\" width=\"100\">  ";
 echo "<form action=\"verwijderen.php\" enctype=\"multipart/form-data\" method=\"post\" name=\"form2\">";
 echo "<input name=\"submit\" type=\"submit\" value=\"weggooien\">";
 echo "<input type=\"hidden\" name=\"option\" value=\"een\"></form>";
 }

 
 if($_SERVER['REQUEST_METHOD'] == 'POST' and isset($_POST['option']) and $_POST['option']== 'een'){
		$filename = "/sites/blabla.nl/www/_images/".$page."".$position.".jpg";
				
		if ( file_exists($filename) )
     	{ 
    	 unlink ($filename);
		 echo "verwijderd";
     	} 
		else 
    	 { 
    	 echo $filename.' bestaat niet eens'; 
     	} 

  }
 
 
 

?>

Posted: Tue Apr 04, 2006 4:27 am
by phpScott
take a step back and get your form submiting the correct items first then worry about unlink the correct file.
If the values from your select boxes are incorrect try and work on that problem first then move onto the unlinking issue.

Code: Select all

<?php
if(isset($_POST['page']))
  echo "page is {$_POST['page']}<br />";
if(isset($_POST['position']))
  echo "position is {$_POST['position']}<br />";
if(isset($_POST['option']))
  echo "option is {$_POST['option']}<br />";
?>

<form action="verwijderen.php" enctype="multipart/form-data" method="post" name="form">
Pagina:
<select name="page" id="page">
      <option value="banken">Banken</option>
      <option value="slaapkamers">Slaapkamers</option>
      <option value="fauteuils">Fauteuils</option>
      <option value="verlichting">Verlichting</option>
      <option value="salontafels">Salontafels</option>
      <option value="tapijten">Tapijten</option>
      <option value="vitrinekasten">Vitrinekasten</option>
      <option value="gordijnen">Gordijnen</option>
      <option value="wandkasten">Wandkasten</option>
      <option value="terrasmeubelen">Terrasmeubelen</option>
      <option value="dressoir">Dressoirs</option>
      <option value="kunst">Schilderijen</option>
      <option value="eet">Eetkamers</option>
      <option value="accesoire">Accessoires</option>
      <option value="haard">Open Haarden</option>
      <option value="av">Audio-Video </option>
      <option value="bontplaid">Bontplaids</option>
      <option value="kussen">Kussens</option>
    </select>
    <br>
    Positie:<select name="position">
      <option value="01">1</option>
      <option value="02">2</option>
      <option value="03">3</option>
      <option value="04">4</option>
      <option value="05">5</option>
      <option value="06">6</option>
    </select><br><input name="submit" type="submit" value="ga">
    <input type="hidden" name="option" value="twee"><br><br> 
</form>
notice the closing form tag as well.