Php AND Mysql vraagje
finduilas - 07/04/2006 17:58
PHP gevorderde
hallo,
Ik heb 2 spelers.1 winnaar en 1 verliezer.
Nu moet ik in m'n adminsysteem de winnaar kiezen met behulp van een dropdown.Dit is nodig voor een qry.DIt lukt.Maar nu wil ik weten hoe ik die andere speler automatisch kan achterhalen zonder dat ik iets moet doen.
7 antwoorden
Gesponsorde links
Simon - 07/04/2006 18:02 (laatste wijziging 07/04/2006 18:02)
PHP expert
je wil van een dropdown met 2 keuzes 1 winnaar kiezen hé?
je kiest de winnaar, en je doet een query, daarna wil je weten wie de verliezer was? of niet?
toon es het stukje waar je die select maakt
finduilas - 07/04/2006 18:05 (laatste wijziging 07/04/2006 18:06)
PHP gevorderde
Nou;
ik heb een dropdown.Daar moet ik kiezen wie de winnaar is.
Daarna moet ik 2 querys uitvoeren.
Ik moet bij de winnaar 10 punten,gespeeld+1 en gewonnen+1
$sQuery2 = "UPDATE cupleden SET punten=punten+10, gespeeld=gespeeld+1, gewonnen=gewonnen+1 WHERE `nicknaam`='".$_POST['winnaar']."'";
$sQuery2 = "UPDATE cupleden SET punten=punten+10, gespeeld=gespeeld+1, gewonnen=gewonnen+1 WHERE `nicknaam`='" . $_POST [ 'winnaar' ] . "'" ;
Maar nu wil ik weten hoe ik eenvoudig die andere speler die verloren heeft kan acherhalen om daar deze query uit te voeren:
$sQuery3 = "UPDATE cupleden SET gespeeld=gespeeld+1, verloren=verloren+1 WHERE `nicknaam`='de verliezer'";
$sQuery3 = "UPDATE cupleden SET gespeeld=gespeeld+1, verloren=verloren+1 WHERE `nicknaam`='de verliezer'" ;
EDIT:Ik ben nog bezig met die dropdown.Maar dit is voorlopig m'n script:
<?php
include ("connect.php");
$sQuery1 = "UPDATE cupmatches SET `status`='oud', winnaar='".$_POST['winnaar']."' WHERE id='".$_GET['id']."'";
$sQuery2 = "UPDATE cupleden SET punten=punten+10, gespeeld=gespeeld+1, gewonnen=gewonnen+1 WHERE `nicknaam`='".$_POST['winnaar']."'";
$sQuery3 = "UPDATE cupleden SET gespeeld=gespeeld+1, verloren=verloren+1 WHERE `nicknaam`='".$_POST['winnaar']."'";
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
if(!MySQL_Query($sQuery1))
{
echo "ERROR:";
echo MySQL_Error();
}
else
{
echo 'Query1 gelukt';
}
if(!MySQL_Query($sQuery2))
{
echo "ERROR:";
echo MySQL_Error();
}
else
{
echo "Query2 gelukt";
}
if(!MySQL_Query($sQuery3))
{
echo "ERROR:";
echo MySQL_Error();
}
else
{
echo 'Query3 gelukt';
}
} else
{
$query = mysql_query("SELECT * FROM `cupmatches` WHERE `id`='".$_GET['id']."' AND `status`='nieuw'") or die(mysql_error());
$gegevens = mysql_fetch_object($query);
{
?>
<form method="POST" action="">
Datum: <?=$gegevens->datum;?><br>
Speler1: <?=$gegevens->speler1;?><br>
Speler2: <?=$gegevens->speler2;?><br>
Winnaar:<input type="text" name="winnaar" value="<?=$gegevens->winnaar;?>"><br>
<INPUT NAME="verzenden" TYPE="submit" VALUE="Verzenden">
</form>
<?PHP
}
}
?>
<?php
include ( "connect.php" ) ;
$sQuery1 = "UPDATE cupmatches SET `status`='oud', winnaar='" . $_POST [ 'winnaar' ] . "' WHERE id='" . $_GET [ 'id' ] . "'" ;
$sQuery2 = "UPDATE cupleden SET punten=punten+10, gespeeld=gespeeld+1, gewonnen=gewonnen+1 WHERE `nicknaam`='" . $_POST [ 'winnaar' ] . "'" ;
$sQuery3 = "UPDATE cupleden SET gespeeld=gespeeld+1, verloren=verloren+1 WHERE `nicknaam`='" . $_POST [ 'winnaar' ] . "'" ;
if ( $_SERVER [ 'REQUEST_METHOD' ] == 'POST' )
{
{
}
else
{
}
{
}
else
{
}
{
}
else
{
}
} else
{
{
?>
<form method="POST" action="">
Datum: <?= $gegevens -> datum ; ?> <br>
Speler1: <?= $gegevens -> speler1 ; ?> <br>
Speler2: <?= $gegevens -> speler2 ; ?> <br>
Winnaar:<input type="text" name="winnaar" value="<?= $gegevens -> winnaar ; ?> "><br>
<INPUT NAME="verzenden" TYPE="submit" VALUE="Verzenden">
</form>
<?PHP
}
}
?>
Simon - 07/04/2006 18:06 (laatste wijziging 07/04/2006 18:22)
PHP expert
ik begrijp je probleem, kun je es de php code voor de select geven
je zou de 2 namen in een array kunnen steken, en dan die eruit halen die niet de winnaar is
<?php
include ("connect.php");
$sQuery1 = "UPDATE cupmatches SET `status`='oud', winnaar='".$_POST['winnaar']."' WHERE id='".$_GET['id']."'";
$sQuery2 = "UPDATE cupleden SET punten=punten+10, gespeeld=gespeeld+1, gewonnen=gewonnen+1 WHERE `nicknaam`='".$_POST['winnaar']."'";
$sQuery3 = "UPDATE cupleden SET gespeeld=gespeeld+1, verloren=verloren+1 WHERE `nicknaam`='".$_POST['winnaar']."'";
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
if(!MySQL_Query($sQuery1))
{
echo "ERROR:";
echo MySQL_Error();
}
else
{
echo 'Query1 gelukt';
}
if(!MySQL_Query($sQuery2))
{
echo "ERROR:";
echo MySQL_Error();
}
else
{
echo "Query2 gelukt";
}
if(!MySQL_Query($sQuery3))
{
echo "ERROR:";
echo MySQL_Error();
}
else
{
echo 'Query3 gelukt';
}
}
else
{
$query = mysql_query("SELECT * FROM `cupmatches` WHERE `id`='".$_GET['id']."' AND `status`='nieuw'") or die(mysql_error());
$gegevens = mysql_fetch_assoc($query);
?>
<form method="POST" action="">
Datum: <?=$gegevens['datum'];?><br>
Speler1: <?=$gegevens['speler1'];?><br>
Speler2: <?=$gegevens['speler2'];?><br>
Winnaar: <input type="text" name="winnaar" value="<?=$gegevens['winnaar'];?>"><br>
<?
$spelers = array($gegevens['speler1'],$gegevens['speler2']);
if($gegevens['winnaar'] == $spelers[0]) {
$verliezer = $spelers[1];
}
else {
$verliezer = $spelers[0];
}
?>
Verliezer <?= $verliezer; ?>
<INPUT NAME="verzenden" TYPE="submit" VALUE="Verzenden">
</form>
<?PHP
}
?>
<?php
include ( "connect.php" ) ;
$sQuery1 = "UPDATE cupmatches SET `status`='oud', winnaar='" . $_POST [ 'winnaar' ] . "' WHERE id='" . $_GET [ 'id' ] . "'" ;
$sQuery2 = "UPDATE cupleden SET punten=punten+10, gespeeld=gespeeld+1, gewonnen=gewonnen+1 WHERE `nicknaam`='" . $_POST [ 'winnaar' ] . "'" ;
$sQuery3 = "UPDATE cupleden SET gespeeld=gespeeld+1, verloren=verloren+1 WHERE `nicknaam`='" . $_POST [ 'winnaar' ] . "'" ;
if ( $_SERVER [ 'REQUEST_METHOD' ] == 'POST' )
{
{
}
else
{
}
{
}
else
{
}
{
}
else
{
}
}
else
{
?>
<form method="POST" action="">
Datum: <?= $gegevens [ 'datum' ] ; ?> <br>
Speler1: <?= $gegevens [ 'speler1' ] ; ?> <br>
Speler2: <?= $gegevens [ 'speler2' ] ; ?> <br>
Winnaar: <input type="text" name="winnaar" value="<?= $gegevens [ 'winnaar' ] ; ?> "><br>
<?
$spelers = array ( $gegevens [ 'speler1' ] , $gegevens [ 'speler2' ] ) ; if ( $gegevens [ 'winnaar' ] == $spelers [ 0 ] ) {
$verliezer = $spelers [ 1 ] ;
}
else {
$verliezer = $spelers [ 0 ] ;
}
?>
Verliezer <?= $verliezer ; ?>
<INPUT NAME="verzenden" TYPE="submit" VALUE="Verzenden">
</form>
<?PHP
}
?>
mss zoek ik het te ver, maarja
finduilas - 07/04/2006 18:24
PHP gevorderde
Dat is het net;
Hij moet het niet doen op de pagina maar in de query.
Dit is nu de versie met de dropdown:
<?php
include ("connect.php");
$sQuery1 = "UPDATE cupmatches SET `status`='oud', winnaar='".$_POST['winnaar']."' WHERE id='".$_GET['id']."'";
$sQuery2 = "UPDATE cupleden SET punten=punten+10, gespeeld=gespeeld+1, gewonnen=gewonnen+1 WHERE `nicknaam`='".$_POST['winnaar']."'";
$sQuery3 = "UPDATE cupleden SET gespeeld=gespeeld+1, verloren=verloren+1 WHERE `nicknaam`='".$_POST['winnaar']."'";
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
if(!MySQL_Query($sQuery1))
{
echo "ERROR:";
echo MySQL_Error();
}
else
{
echo 'Query1 gelukt';
}
if(!MySQL_Query($sQuery2))
{
echo "ERROR:";
echo MySQL_Error();
}
else
{
echo "Query2 gelukt";
}
if(!MySQL_Query($sQuery3))
{
echo "ERROR:";
echo MySQL_Error();
}
else
{
echo 'Query3 gelukt';
}
} else
{
$query = mysql_query("SELECT * FROM `cupmatches` WHERE `id`='".$_GET['id']."' AND `status`='nieuw'") or die(mysql_error());
$gegevens = mysql_fetch_object($query);
{
?>
<form method="POST" action="">
Datum: <?=$gegevens->datum;?><br>
Speler1: <?=$gegevens->speler1;?><br>
Speler2: <?=$gegevens->speler2;?><br>
Winnaar:<select name="winnaar">
<option value="<?=$gegevens->speler1;?>"><?=$gegevens->speler1;?></option>
<option value="<?=$gegevens->speler2;?>"><?=$gegevens->speler2;?></option>
</select>
<INPUT NAME="verzenden" TYPE="submit" VALUE="Verzenden">
</form>
<?PHP
}
}
?>
<?php
include ( "connect.php" ) ;
$sQuery1 = "UPDATE cupmatches SET `status`='oud', winnaar='" . $_POST [ 'winnaar' ] . "' WHERE id='" . $_GET [ 'id' ] . "'" ;
$sQuery2 = "UPDATE cupleden SET punten=punten+10, gespeeld=gespeeld+1, gewonnen=gewonnen+1 WHERE `nicknaam`='" . $_POST [ 'winnaar' ] . "'" ;
$sQuery3 = "UPDATE cupleden SET gespeeld=gespeeld+1, verloren=verloren+1 WHERE `nicknaam`='" . $_POST [ 'winnaar' ] . "'" ;
if ( $_SERVER [ 'REQUEST_METHOD' ] == 'POST' )
{
{
}
else
{
}
{
}
else
{
}
{
}
else
{
}
} else
{
{
?>
<form method="POST" action="">
Datum: <?= $gegevens -> datum ; ?> <br>
Speler1: <?= $gegevens -> speler1 ; ?> <br>
Speler2: <?= $gegevens -> speler2 ; ?> <br>
Winnaar:<select name="winnaar">
<option value="<?= $gegevens -> speler1 ; ?> "><?= $gegevens -> speler1 ; ?> </option>
<option value="<?= $gegevens -> speler2 ; ?> "><?= $gegevens -> speler2 ; ?> </option>
</select>
<INPUT NAME="verzenden" TYPE="submit" VALUE="Verzenden">
</form>
<?PHP
}
}
?>
Hij moet gewoon als speler 1 winnaar is onmiddelijk speler2 zien als verliezer in de query.Alles gebeurt in 1x.Dus hij kan niet controleren bij het laden van de pagina maar nadat ik op verzenden drukte.
ikkedikke - 07/04/2006 18:45
PHP expert
zijn speler1 en speler 2 nummers?
zo ja: geef de selectboxen een waarde als speler1: speler2
en dan met explode uit elkaar halen. de eerste is dan de winnaar en de 2e verliezer
finduilas - 07/04/2006 18:48 (laatste wijziging 08/04/2006 08:20)
PHP gevorderde
nee;
Het zijn namen.
EDIT:Ik heb denk ik iets gevonden.Maar hoe zet ik dit in een query:
<?=$gegevens->speler1;?>
Het komt uit een andere tabel dus ik kan het niet gewoon =speler1 doen.
Martijn1989 - 08/04/2006 08:55
PHP ver gevorderde
je moet het mee laten posten in een hiddenveld ed
Gesponsorde links
Dit onderwerp is gesloten .