Seite 1 von 1

Falls vorhanden, nur updaten und nicht neu schreiben...

Verfasst: 05.01.2004 18:24
von |a.G| Mapster
Also ich hab ein Script, dass soll Signalisieren, welche Member eines Clans an einem Clanwar teilnehmen oder nicht. Zur auswahl stehen 3 Arten:
1 = Ich kann kommen
2 = Ich weiss nicht
3 = Ich kann nicht.

Mein Problem ist nun, dass das Script (wenn man seine Meinung ändern möchte) eine Variable an die nächste Seite mit übergibt.
$update = 1
Es handelt sich um eine Meinungsänderung und der User wir nicht doppelt eingetragen.
$update = 0
User hat sich für diesen Clanwar bisher nicht eingetragen und ein neuer Eintrag wird erstellt.

Das Problem ist nun, dass das Script immer wieder einen Doppelpost erlaubt, heisst die $update Variable wird falsch bestimmt.
Das ist mein bisheriger Script, ziemlicher Müll wie ich schätze...

Wer kann mir sagen was da falsch läuft ?

Code: Alles auswählen

<?php
//Das Script beginnt zu ermitteln, ob der Spieler schon angemeldet wurde.
$membername = $userdata['username']; 
	$sql = "
SELECT 
	*
FROM
	mapster_nextstat
WHERE
	stat_warid = ".$_GET['showid']."
";
$result = mysql_query($sql);
if(mysql_num_rows($result)) {
while($row = mysql_fetch_assoc($result)) {
if(isset($row['stat_username']) AND isset($row['stat_username']) == $membername) {
$update = 1;
} else {
$update = 0;
}
}}
// Ende der Kontrolle
?>

Re: Falls vorhanden, nur updaten und nicht neu schreiben...

Verfasst: 05.01.2004 18:37
von Pyramide
|a.G| Mapster hat geschrieben:isset($row['stat_username']) == $membername
sollte das vielleicht $row['stat_username'] == $membername heissen?

PS: Diese Bedingungen kannst du doch auch der SQL-Anfrage als WHERE mitgeben und dann mit [php:mysql_num_rows] prüfen, ob ein Ergebnis vorliegt.

Re: Falls vorhanden, nur updaten und nicht neu schreiben...

Verfasst: 05.01.2004 19:10
von |a.G| Mapster
Pyramide hat geschrieben:
|a.G| Mapster hat geschrieben:isset($row['stat_username']) == $membername
sollte das vielleicht $row['stat_username'] == $membername heissen?

PS: Diese Bedingungen kannst du doch auch der SQL-Anfrage als WHERE mitgeben und dann mit <a href="http://de.php.net/manual-lookup.php?lan ... l_num_rows" target="_blank" class="postlink">mysql_num_rows</a> prüfen, ob ein Ergebnis vorliegt.
Funzt leider auch net richtig...

Kann mir jemand, der davon mehr Ahnung hat, den Script so umschreiben, dass er funktioniert ?