delete doormiddel van een post

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Damiaan

Damiaan

30/12/2008 02:53:00
Quote Anchor link
ik wil een ip unbannen door het in te voeren in een input.

ik had dit...


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
<?php


$con
= mysql_connect("3","2","1");
if (!$con)
  {

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

mysql_select_db("coendamiaan", $con);
$sql="DELETE FROM ipban WHERE (ip)
VALUES
('$_POST[ip]')"
;
if (!mysql_query($sql,$con))
  {

  die('Error: ' . mysql_error());
  }

echo "IP is unbanned..";
mysql_close($con)


?>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
Error: 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 'VALUES ('82.82.83.234')' at line 2



BUT!.......

that dont work :(
Gewijzigd op 01/01/1970 01:00:00 door Damiaan
 
PHP hulp

PHP hulp

26/04/2024 10:15:02
 
Frank -

Frank -

30/12/2008 07:18:00
Quote Anchor link
Dat is dan ook geen geldige syntax voor een DELETE-query.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
$sql
="
DELETE FROM
  ipban
WHERE
  ip = '"
.mysql_real_escape_string($_POST[ip])."'
"
;
?>

mysql_real_escape_string() is er voor de veiligheid, userinput (bv. een POST) mag nooit zonder beveiliging in een query worden gezet. Doe je dat wel, dan moet je niet zeuren dat je op een slechte dag in één klap jouw database kwijt bent.

Vergeet niet om met mysql_affected_rows() te controleren of er wel een record is verwijderd, alleen controleren of de query technisch is gelukt, is onvoldoende. Een query die technisch lukt, kan best wel eens helemaal niets uitvoeren, zie de WHERE in de query. Wellicht is er helemaal geen record die aan de voorwaarden voldoet.

Offtopic: Ik verwijder zelden iets, geef gewoon de status op van een record: "verwijderd" of "actief". Data staat maar zelden in de weg.

Edit: stond nog wat quote-rommel die er niet hoorde te staan.

@Barman: Het is nog vroeg...
Gewijzigd op 01/01/1970 01:00:00 door Frank -
 
Barman V

Barman V

30/12/2008 07:20:00
Quote Anchor link
De kolom (ip) is onjuist. Dit moet zijn:

$sql="DELETE FROM ipban WHERE ip
VALUES
('$_POST[ip]')";

(ik ga overigens niet verder in op de fout- en beveiligingsgevoeligheid van de code)
 
Bo az

Bo az

30/12/2008 12:19:00
Quote Anchor link
Een foutje wat jullie allemaal maakten op de vroege morgen (daarom sta ik ook wat later op, kan het iedereen aanraden) is dat de code nog steeds een php notice zal achterlaten. $_POST[ip] ip hoort tussen '-quotes. $_POST['ip']
 
Damiaan

Damiaan

31/12/2008 00:13:00
Quote Anchor link
dankje it workes :)
 



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.