Hallo,

Sorry dat ik zoveel topics aanmaak maar ik loop iedere keer weer vast.
Ik krijg met deze code:

<?php
include 'connect.php';


if(isset($_GET['username'])){
if(!empty($_GET['username'])){
$username = mysql_real_escape_string(strip_tags($_GET['username']));
$sql = mysql_query("SELECT * FROM donations WHERE username='$username' LIMIT 1") or die("MYSQL");
$count = mysql_num_rows($sql);

	if($count == 1){
		while($row = mysql_fetch_array($sql)){
			$claimed = $row["claimed"];
			$amount = $row["amount"];
			$package = $row["package"];
				
				if($claimed == 0){
					$sql = mysql_query("UPDATE claimed SET claimed='1' WHERE username='$username' LIMIT 1");
						if($sql){
							die($package);
						}else{
							die("MYSQL");
						}
				}else{die("CLAIMED");}
			
		}
	}else{die("EMPTY");}

}else{die("EMPTY");}
}

?>


de volgende error:

Notice: Undefined index: amount in /home/luukwa/domains/freedomx.icurse.nl/public_html/donation/check.php on line 16 MYSQL

Wat doe ik NIET goed?

Groet,
Luuk.
Kan je de relevante code op het forum plaatsen? Straks werkt de Pastebin niet meer, en is dit topic waardeloos.
Alvast bedankt.
Ik heb gisteren geprobeert om dat te doen maar dat gaat vreselijk buggen, sorry daarvoor.
De melding die je krijgt, komt van deze lijn:
$amount = $row["amount"];

waarbij php jou meldt dat $row["amount"] niet bestaat.

Het lijkt er op dat de tabel 'donations' geen veld 'amount' bevat.
Kijk nog eens na of dat veld misschien anders heet in de DB

Luuk Waka op 12/08/2013 14:00:08

Ik heb gisteren geprobeert om dat te doen maar dat gaat vreselijk buggen, sorry daarvoor.

Niet als je het tussen code-tags zet.



[size=xsmall]Toevoeging op 12/08/2013 14:10:39:[/size]

En bij voorkeur raad ik daarom ook aan om in het vervolg geen * te gebruiken om alle velden op te halen, maar alle velden ook expliciet te noemen.
@ Kris, dat is inderdaad het geval! Hartelijk bedankt!
Kun je aub de titel van je topic "Nieuwe error, help gezocht!" aanpassen in een zinvolle titel die iets zegt over het probleem? Iedereen hier heeft hulp nodig. (Daarnaast is het "hulp gezocht" en niet "help gezocht".)
Zou je even je titel aan kunnen passen naar je exacte probleem? Meerdere mensen op het forum hebben namelijk problemen met PHP en MySQL. Dus graag zien we een duidelijkere titel die je probleem duidelijk omschrijft.

En zou je de code in het topic kunnen plaatsen. Zoals ik al eerder gezegd had zal de Pastebin straks niet meer bestaan en heeft niemand wat aan dit topic.

Alvast bedankt

<?php
include 'connect.php';


if(isset($_GET['username'])){
if(!empty($_GET['username'])){
$username = mysql_real_escape_string(strip_tags($_GET['username']));
$sql = mysql_query("SELECT * FROM donations WHERE username='$username' LIMIT 1") or die("MYSQL");
$count = mysql_num_rows($sql);

	if($count == 1){
		while($row = mysql_fetch_array($sql)){
			$claimed = $row["claimed"];
			$amount = $row["amount"];
			$package = $row["package"];
				
				if($claimed == 0){
					$sql = mysql_query("UPDATE claimed SET claimed='1' WHERE username='$username' LIMIT 1");
						if($sql){
							die($package);
						}else{
							die("MYSQL");
						}
				}else{die("CLAIMED");}
			
		}
	}else{die("EMPTY");}

}else{die("EMPTY");}
}

?>
Even wat opmerkingen over je code.
- Benoem je velden i.p.v. van de * (alles) te gebruiken
- Pas goede foutafhandeling toe, door te kijken met een if op het resultaat van $sql.
Je geeft nu aan dat je 'MYSQL' ziet, maar er zijn twee mogelijkheden in het script die MYSQL tonen.

Reageren