[PHP] Undefined variabele *

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik ben bezig aan een ban systeem en in het onderste gedeelte van mijn scriptje komt de melding "undefined variabele" tevoorschijn op 'id'.

Moet ik misschien ergens (isset gebruiken voor $id, en hoe doe ik dat dan?


Dit is het onderste gedeelte:

mysql_query("INSERT INTO ban2(id, ip, gebruiker, tot, soort, datum_begin, actie) VALUES ('', '$ip', '$gebruiker', '$tot', '$soort', '$datum_huidig', '$actie')")or die(mysql_error());

echo"De persoon met ip $ip is suc6vol gebanned";
echo"<head><META HTTP-EQUIV='refresh' CONTENT='1; url=bannen.php?goto=start'><ad>";

}elseif($goto = "verwijder"){

mysql_query("DELETE FROM ban2 WHERE id='$id'")or die(mysql_error());

echo"De persoon met id $id is suc6vol verwijdert uit de bantabel";
echo"<head><META HTTP-EQUIV='refresh' CONTENT='1; url=bannen.php?goto=start'><ad>";

}else{
echo"Er is iets fout gegaan..<br>Bug?<br>Meteen melden dan!!!";
}
?>

Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 12:52
Het is misschien handig als je enkel de relevante code post, en wat meer info kunt geven (zie ook de P&W Quickstart).

Je kan je INSERT query in ieder geval zo veranderen dat het veld id er niet meer in voorkomt:
code:
1
INSERT INTO ban2 (ip, gebruiker, .... ) VALUES ( '$ip', '$gebruiker', ....)


Daarnaast verwachten we ook dat je de taal waarmee je werkt in de topictitel zet. Ik heb dit nu ff voor jou gedaan.

Kortom: lees toch eens die quickstart en pas je topic zo aan, zodat we er hier toch wat kunnen mee doen....

[ Voor 28% gewijzigd door whoami op 15-09-2003 14:27 ]

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

  • daaan
  • Registratie: Maart 2000
  • Laatst online: 04-09 13:13

daaan

Brandweer Zoutkamp

Moet je het id veld natuurlijk wel op auto_increment hebben staan.

One's never alone with a rubber duck.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Sorry dat is zo onduidelijk was, en voor die te grote post, dit is nl de eerste keer dat ik zelf iets post.

De foutmelding geldt voor deze twee regels, dus dat INSERT gedeelte werkt goed.

mysql_query("DELETE FROM ban2 WHERE id='$id'")or die(mysql_error());

echo"De persoon met id $id is suc6vol verwijdert uit de bantabel";

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
En id staat op autoincrement

Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 12:52
Tja, je hebt geen variable die id heet zeker?

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

  • daaan
  • Registratie: Maart 2000
  • Laatst online: 04-09 13:13

daaan

Brandweer Zoutkamp

Sorry, dom :X

[ Voor 89% gewijzigd door daaan op 15-09-2003 14:36 ]

One's never alone with a rubber duck.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Nee, enig idee waar ik deze variabele dan zou moeten plaatsen in m'n script? onder elseif?

Acties:
  • 0 Henk 'm!

  • daaan
  • Registratie: Maart 2000
  • Laatst online: 04-09 13:13

daaan

Brandweer Zoutkamp

Die moet je waarschijnlijk mee krijgen van de vorige pagina

One's never alone with a rubber duck.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik denk dat ik ergens moet plaatsen: if (isset($_POST["id"])) {} maar ik heb geen idee waar??

Acties:
  • 0 Henk 'm!

  • Bever
  • Registratie: Maart 2001
  • Laatst online: 11:35
Je zult neem ik aan het id uit de database moeten halen.

Acties:
  • 0 Henk 'm!

  • nxt
  • Registratie: November 2001
  • Laatst online: 24-08 15:34

nxt

als je de id column op autoincrement hebt staan
dan kun je mysql_insert_id gebruiken

Acties:
  • 0 Henk 'm!

  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

PHP:
1
2
echo"De persoon met id $id is suc6vol verwijdert uit de bantabel";
echo"<head><META HTTP-EQUIV='refresh' CONTENT='1; url=bannen.php?goto=start'><ad>";


Een cursusje HTML lijkt me ook niet overbodig :X

Intentionally left blank


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ja, is niet echt netjes, maar ik heb dit gedeelte niet zelf geschreven, maar gekopieerd uit een tutorial.
Een cursus html is dus niet nodig!

Acties:
  • 0 Henk 'm!

  • Jelle Niemantsverdriet
  • Registratie: Februari 2000
  • Laatst online: 08:50
PHP:
1
 }elseif($goto = "verwijder"){

== ook niet helemaal goed

Acties:
  • 0 Henk 'm!

  • Kwai_gon_jinn
  • Registratie: Januari 2001
  • Niet online

Kwai_gon_jinn

[-geen icon-]

zet ergens boven de if lussen of boven aan het script

PHP:
1
2
extract($_GET);
extract($_POST);


neer, want ik neem aan dat ID ergens in je url staat er vanuit daar word afgeleid.

Confucius said: "In ancient time, learning was for self. Nowadays learning is for others."


Acties:
  • 0 Henk 'm!

  • ReCreator
  • Registratie: Juli 2002
  • Niet online

ReCreator

-geen-

Je gooit het ip adres in het id veld met INSERT dus $id is stiekem $ip denk ik
want bij INSERT gooi je nl $ip in id

Maar ik kan het ook fout hebben, ben dr ook geen held in...

edit: Schele ik... maar id veld blijft leeg zo....haal id weg bij INSERT als ie toch op auto_increment staat.

en deleten op ip nummer ipv id?

[ Voor 31% gewijzigd door ReCreator op 16-09-2003 16:46 ]

"Time flies like an arrow; fruit flies like a banana."


  • Lentje
  • Registratie: Juni 2001
  • Laatst online: 12-09 17:04
Ja idd, waarom zou je ID gebruiken bij de INSERT? die hoef je niet van de url mee te krijgen ofzo. Het gaat om de IP en aangezien ID toch automatisch een waarde krijgt.

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?
mysql_query("INSERT INTO ban2(ip, gebruiker, tot, soort, datum_begin, actie) 
VALUES ('$ip', '$gebruiker', '$tot', '$soort', '$datum_huidig', '$actie')")or die(mysql_error());

echo"De persoon met ip $ip is suc6vol gebanned";
echo"<head><META HTTP-EQUIV='refresh' CONTENT='1; url=bannen.php?goto=start'><ad>";

}
elseif($goto == "verwijder"){

mysql_query("DELETE FROM ban2 WHERE ip='$ip'")or die(mysql_error());

echo"De persoon met id ".$id." is suc6vol verwijdert uit de bantabel";
echo"<head><META HTTP-EQUIV='refresh' CONTENT='1; url=bannen.php?goto=start'><ad>";

}else{
echo"Er is iets fout gegaan..<br>Bug?<br>Meteen melden dan!!!";
}
?>


Zoiets?

[ Voor 19% gewijzigd door Lentje op 17-09-2003 07:43 . Reden: Regel ingekort, leuk layout verneuken :P ]

Pagina: 1