Hallo,
Ik ben een markt aan het maken maar ik heb een probleem:
Als ik de hond gekogt hebt gaat er helemaal geen geld af.(opgelost)
en de verkoper krijgt zijn geld niet (nogniet opgelost)
Er komt ook geen geld bij de verkoper bij.
Wie kan me helpen?
<?php
// Maak verbinding met server
include("includes/db-connect.php");
// Selecteer database
mysql_select_db("desite");
// Selecteer tabel + query
$query = "SELECT id, prijs, manier FROM honden WHERE id = '".$_GET['id']."'";
// Resultaat
$resultaat = mysql_query($query) or die (mysql_error());
while ($obj = mysql_fetch_object($resultaat)) {
if($obj->manier == "bieden") {
echo "Je kunt deze hond niet direct kopen, je kunt <a href=\"index.php?pagina=bieden&id=".$_GET['id']."\">hier</a> wel een bod uitbrengen.";
} else {
$query = "UPDATE gebruikers SET geld=geld - ".$obj->prijs." WHERE gebruikersnaam='".$_SESSION['gebruikersnaam']."'";
$Sql = mysql_query ($query) or die (mysql_error ()); // 1ste Maal
$query = "UPDATE honden SET eigenaar = '".$_SESSION['gebruikersnaam']."', tekoop = '0' WHERE id = '".$obj->id."'";
$Sql = mysql_query ($query) or die (mysql_error ()); // 2de Maal
echo "Je bent nu succesvol eigenaar geworden van deze hond";
}
}
?>
<?php
// Maak verbinding met server
include("includes/db-connect.php");
// Selecteer database
mysql_select_db("desite");
// Selecteer tabel + query
$query = "SELECT id, prijs, manier FROM honden WHERE id = '".$_GET['id']."'";
// Resultaat
$resultaat = mysql_query($query) or die (mysql_error());
while ($obj = mysql_fetch_object($resultaat)) {
if($obj->manier == "bieden") {
echo "Je kunt deze hond niet direct kopen, je kunt <a href=\"index.php?pagina=bieden&id=".$_GET['id']."\">hier</a> wel een bod uitbrengen.";
} else {
$query = "UPDATE gebruikers SET geld=geld - ".$obj->prijs." WHERE gebruikersnaam='".$_SESSION['gebruikersnaam']."'";
$Sql = mysql_query ($query) or die (mysql_error ()); // 1ste Maal
$query = "UPDATE honden SET eigenaar = '".$_SESSION['gebruikersnaam']."', tekoop = '0' WHERE id = '".$obj->id."'";
$Sql = mysql_query ($query) or die (mysql_error ()); // 2de Maal
echo "Je bent nu succesvol eigenaar geworden van deze hond";
}
}
?>
Hij werkt Erg bedankt!!
Het geld gaat van de koper af, maar het gaat nog altijd niet naar de verkoper. Maar ziet er wel logish uit, enig idee hoe ik dat doe? Nogmaals bedankt!
<?php
// Maak verbinding met server
include("includes/db-connect.php");
// Selecteer database
mysql_select_db("desite");
// Selecteer tabel + query
$query = "SELECT id, prijs, manier FROM honden WHERE id = '".$_GET['id']."'";
// Resultaat
$resultaat = mysql_query($query) or die (mysql_error());
// Ophalen van gegevens
$obj = mysql_fetch_object($resultaat);
// Update
if ($obj->manier == "bieden") {
echo "Je kunt deze hond niet direct kopen, je kunt <a href='index.php?pagina=bieden&id=".$_GET['id']."'>hier</a> wel een bod uitbrengen.";
} else {
$query = "UPDATE gebruikers SET geld=geld - ".$obj->prijs." WHERE gebruikersnaam='".$_SESSION['gebruikersnaam']."'";
$Sql = mysql_query ($query) or die (mysql_error ()); // 1ste Maal
$query = "UPDATE honden SET eigenaar = '".$_SESSION['gebruikersnaam']."', tekoop = '0' WHERE id = '".$_GET['id']."'";
$Sql = mysql_query ($query) or die (mysql_error ()); // 2de Maal
if (mysql_num_rows ($Sql) >= 1)
echo "Je bent nu succesvol eigenaar geworden van deze hond";
else
echo "Niet gelukt";
}
?>
edit:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/vhosts/hondencity.eu/httpdocs/spel/paginas/kopen.php on line 21
Niet gelukt
Alles ervoor was goed hoor, er moest enkel nog bij dat de verkoper zijn geld ook moest krijgen. Want dat stond nog niet in het script.
<?php
// Maak verbinding met server
include("includes/db-connect.php");
// Selecteer database
mysql_select_db("desite");
// Selecteer tabel + query
$query = "SELECT id, prijs, manier FROM honden WHERE id = '".$_GET['id']."'";
// Resultaat
$resultaat = mysql_query($query) or die (mysql_error());
// Ophalen van gegevens
$obj = mysql_fetch_object($resultaat);
// Update
if ($obj->manier == "bieden") {
echo "Je kunt deze hond niet direct kopen, je kunt <a href='index.php?pagina=bieden&id=".$_GET['id']."'>hier</a> wel een bod uitbrengen.";
} else {
$query = "UPDATE gebruikers SET geld=geld - ".$obj->prijs." WHERE gebruikersnaam='".$_SESSION['gebruikersnaam']."'";
$Sql = mysql_query ($query) or die (mysql_error ()); // 1ste Maal
$que = "UPDATE honden SET eigenaar = '".$_SESSION['gebruikersnaam']."', tekoop = '0' WHERE id = '".$_GET['id']."'";
$Sql_1 = mysql_query ($que) or die (mysql_error ()); // 2de Maal
if (mysql_num_rows ($Sql_1) >= 1)
echo "Je bent nu succesvol eigenaar geworden van deze hond";
else
echo "Niet gelukt";
}
?>
Ik denk dat het ligt aan de laatste query die klopt ergens niet maar dat is een SQL fout. Het kan goed liggen aan een domme iets. maar dan zou je al lang de error hebben kunne zeggen.
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/vhosts/hondencity.eu/httpdocs/spel/paginas/kopen.php on line 21
Niet gelukt
ArcanA,
Als alles wordt geupdatekan je die mysql_num_rows () weg halen nu wordt hij enkel gebruikt om de fout te zoeken.
De fout ligt in je SQL, deze moet je zelf zoeken er is iets dat niet klopt maar wat dat weet ik niet. het kan goed zijn dat de fout al eerder gebeurd is.
<?php
// Maak verbinding met server
include("includes/db-connect.php");
// Selecteer database
mysql_select_db("desite");
// Selecteer tabel + query
$query = "SELECT id, prijs, manier FROM honden WHERE id = '".$_GET['id']."'";
// Resultaat
$resultaat = mysql_query($query) or die (mysql_error());
// Ophalen van gegevens
$obj = mysql_fetch_object($resultaat);
// Update
if ($obj->manier == "bieden") {
echo "Je kunt deze hond niet direct kopen, je kunt <a href='index.php?pagina=bieden&id=".$_GET['id']."'>hier</a> wel een bod uitbrengen.";
} else {
$query = "UPDATE gebruikers SET geld=geld - ".$obj->prijs." WHERE gebruikersnaam='".$_SESSION['gebruikersnaam']."'";
$Sql = mysql_query ($query) or die (mysql_error ()); // 1ste Maal
$que = "UPDATE honden SET eigenaar = '".$_SESSION['gebruikersnaam']."', tekoop = '0' WHERE id = '".$_GET['id']."'";
$Sql_1 = mysql_query ($que) or die (mysql_error ()); // 2de Maal
echo $Sql_1;
echo "Je bent nu succesvol eigenaar geworden van deze hond";
else
echo "Niet gelukt";
}
?>
<?php
// Maak verbinding met server
include("includes/db-connect.php");
// Selecteer database
mysql_select_db("desite");
/* is er wel een hond gekozen? */
if(isset($_GET['id']) && is_numeric($_GET['id'])) {
$qHond = mysql_query("SELECT * FROM honden WHERE id = '".$_GET['id']."'") or die (mysql_error());
/* controleer of de hond wel bestaat */
if(mysql_num_rows($qHond) > 0) {
/* fetch het resultaat met _assoc (liefst) */
$fHond = mysql_fetch_assoc($qHond);
if($fHond['manier'] == "bieden") {
echo "Je kunt deze hond niet direct kopen, je kunt <a href=\"index.php?pagina=bieden&id=".$_GET['id']."\">hier</a> wel een bod uitbrengen.";
}
else {
/* update geld koper */
$uKoper = mysql_query ("UPDATE gebruikers SET geld = geld - ".$fHond['prijs']." WHERE gebruikersnaam='".$_SESSION['gebruikersnaam']."'") or die ('Er ging iets fout bij het wijzigen van de database: <br />'.mysql_error ());
/* update geld verkoper */
$uVerkoper = mysql_query ("UPDATE gebruikers SET geld = geld + ".$fHond['prijs']." WHERE gebruikersnaam='".$fHond['eigenaar']."'") or die ('Er ging iets fout bij het wijzigen van de database: <br />'.mysql_error ());
/* set nieuwe eigenaar */
$Sql = mysql_query ("UPDATE honden SET eigenaar = '".$_SESSION['gebruikersnaam']."', tekoop = '0' WHERE id = '".$obj->id."'") or die ('Er ging iets fout bij het wijzigen van de database: <br />'. mysql_error ());
/* display message */
echo "Je bent nu succesvol eigenaar geworden van deze hond.";
}
}
}
else {
echo 'Je moet wel een hond kiezen.';
}
?>
echo"Je kunt deze hond niet direct kopen, je kunt <a href=\"index.php?pagina=bieden&id=".$_GET['id']."\">hier</a> wel een bod uitbrengen.";
}
else{
/* update geld koper */
$uKoper=mysql_query("UPDATE gebruikers SET geld = geld - ".$fHond['prijs']." WHERE gebruikersnaam='".$_SESSION['gebruikersnaam']."'") or die('Er ging iets fout bij het wijzigen van de database: <br />'.mysql_error());
/* update geld verkoper */
$uVerkoper=mysql_query("UPDATE gebruikers SET geld = geld + ".$fHond['prijs']." WHERE gebruikersnaam='".$fHond['eigenaar']."'") or die('Er ging iets fout bij het wijzigen van de database: <br />'.mysql_error());
/* set nieuwe eigenaar */
$Sql=mysql_query("UPDATE honden SET eigenaar = '".$_SESSION['gebruikersnaam']."', tekoop = '0' WHERE id = '".$obj->id."'") or die('Er ging iets fout bij het wijzigen van de database: <br />'.mysql_error());
/* display message */
echo"Je bent nu succesvol eigenaar geworden van deze hond.";
die IF mocht dus nog niet weg
de echo $Sql_1 kon mij verder uitleg geven waarom er niets gebeurde.
Als ik 1 vraag mag stellen:
- Hoelang ben je al bezig met PHP & MySql?
Als je nog niet lang bezig bent met MySql raad ik u aan om de tuts van Sima eens door te nemen van SQL.
Daar wordt je dan misschien iest wijzer van. Ik heb u die trouwens al eens aangeraden. Als je er al lang mee bezig bent oefen dan maar eerst wat vooralleer zo'n zaken te proberen. De fout zit in de $que. dit is een ongeldige SQL, maar dan ook weer niet. Je zult de fout zelf moeten zoeken we zullen hier allemaal te weinig info vinden.
Ik denk trouwens dat er te weinig info wordt upgedate en het kan zijn dat die hond al lang van jou is maar gwn nog niet duidelijk wordt weergegeven op de andere pagina. Ik hoop dus wel dat je de Database na kijkt en niet enkel de pagina waar je je honden koopt.
DenMette: jij bent ook heel erg bedankt voor de moeite!!
Edit: At hierboven, ja ik heb me wrs belachelijk gemaakt, maar ik ga me een php boek kopen die ik ga doornemen als begin. Daarna gaik hier nog enkele tuts volgen.