Delete met HREF en een zekerheids button

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Lol kid

lol kid

12/01/2011 16:39:51
Quote Anchor link
Beste phpers,
ik heb een database, naast elke regel staat er edit/delete. Edit werkt maar Delete nog niet.Als ik op delete druk krijg ik een button of ik het zeker weet om het te deleten en dan geef ie dit aan:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

mijn code
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
 $username
="root";
$password="";
$database="Verzameling";
$con=mysql_connect(localhost,$username,$password);
if (!$con)
  {

die('Could not connect: ' . mysql_error());
  }

mysql_select_db($database, $con);


$ID = $_GET['ID'];
$info = mysql_query("SELECT * FROM cds WHERE ID='$ID'") or die ('Error Getting User Data! <br />' .mysql_error());
$chk = mysql_num_rows($info);
$u = mysql_fetch_array($info);
if (!$_POST['delete'])
if ($chk < 1) {
        echo 'The ID <b>'.$ID.'</b> does not exist!';
    }

    else
    {
    ?>


<form method="post" action="">
<table width="350">
<tr>
<td>weet U het zeker dat u het wilt verwijderen?: </td>
</tr>
<tr>
<td colspan="1"><input type="submit" name="delete" value="delete" /></td>
</tr>
</table>
</form>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
}
if ($_POST['delete']) {
$query =("DELETE FROM cds WHERE ID=". $_POST['ID']) or die ('Error Updating Data! <br />' .mysql_error());
$result = mysql_query($query) or die(mysql_error());
}

echo ($query);
?>

Hoop dat iemad wat suggesties heeft want ik ik ben helemaal op

Toevoeging op 12/01/2011 16:40:25:

jongens deze site doet heel raar nadat ik mijn code heb geplakt sorry :S
 
PHP hulp

PHP hulp

24/01/2020 05:54:27
 
- Mark -

- Mark -

12/01/2011 16:54:54
Quote Anchor link
Kijk eens naar regel 5. Je mist enkele quotes om localhost.

Haal ook eens je vars buiten quotes en bouw goede fout afhandeling in.

Kijk eens op www.phptuts.nl voor een aantal tutorials daar over.

EDIT: SQL injection is ook mogelijk zie ik nu.
Gewijzigd op 12/01/2011 16:56:01 door - Mark -
 
Teun Hesseling

Teun Hesseling

12/01/2011 16:57:31
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
$result
= mysql_query("DELETE FROM cds WHERE id = '".mysql_real_escape($_GET['id'])."'");

if(mysql_num_rows($result) > 0) {
    echo 'resultaat';
}

else {
    echo 'geen resultaat';
}

?>


voorbeeldje ^^^^
 
Bas Cost Budde

Bas Cost Budde

12/01/2011 17:29:39
Quote Anchor link
Maar, als je jouw "weet u het zeker"-form post, komt er geen ID mee he!
 
Noppes Homeland

Noppes Homeland

12/01/2011 18:36:16
Quote Anchor link
En de post van Teun mag je negeren, want die kan blijkbaar niet lezen wat er op
http://www.php.net/mysql_num_rows geschreven staat.

Daar moge dan ook een verwijzing staan naar mysql_affected_rows, maar ook daar moet je rekening mee houden dat je 0 terug kan krijgen, dat zegt dan wel niets maar dan toch ook wel weer iets. Dus goed lezen wat er staat.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.