PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   MySQLi/PDO/(MySQL) (http://www.selfphp.de/forum/forumdisplay.php?f=22)
-   -   Leeres Resultat? (http://www.selfphp.de/forum/showthread.php?t=15149)

Sk3y 12.11.2006 18:39:00

Leeres Resultat?
 
Guten Abend irgendwie habe ich ein problem mit meinem highscore-system.

Diese Daten bekomm ich aus einer PHP-Datei wenn ich die punkte der Spieler ausrechnen lasse.
Lokal klappte das jetzt eigentlich super und ohne fehlermeldung. Warum das Script bei 'kampfkraft' immer 0 hat weiß ich nicht finde es aber noch herraus.
PHP-Code:

UPDATE highscoretemp SET kampfkraft '0'gebaeude '6994241'forschung '5060000'gesamt '12054241' WHERE uid '1';
UPDATE highscoretemp SET kampfkraft '0'gebaeude '3051706'forschung '3810000'gesamt '6861706' WHERE uid '5';
UPDATE highscoretemp SET kampfkraft '0'gebaeude '0'forschung '0'gesamt '0' WHERE uid '9';
UPDATE highscoretemp SET kampfkraft '0'gebaeude '18590'forschung '255000'gesamt '273590' WHERE uid '13';
UPDATE highscoretemp SET kampfkraft '0'gebaeude '327'forschung '0'gesamt '327' WHERE uid '14';
UPDATE highscoretemp SET kampfkraft '0'gebaeude '344'forschung '0'gesamt '344' WHERE uid '18';
UPDATE highscoretemp SET kampfkraft '0'gebaeude '4893'forschung '125000'gesamt '129893' WHERE uid '19';
UPDATE highscoretemp SET kampfkraft '0'gebaeude '327'forschung '0'gesamt '327' WHERE uid '21'

Die daten werden so übertragen wie es ist. Allerdings liefert der code mir folgende fehlermeldung.
PHP-Code:

SQL-Befehl
UPDATE highscoretemp SET kampfkraft '0',
gebaeude '6994241',
forschung '5060000',
gesamt '12054241' WHERE uid '1';# MySQL lieferte ein leeres Resultat zurück (d.h. null Zeilen).
UPDATE highscoretemp SET kampfkraft '0',
gebaeude '3051706',
forschung '3810000',
gesamt '6861706' WHERE uid '5';# MySQL lieferte ein leeres Resultat zurück (d.h. null Zeilen).
UPDATE highscoretemp SET kampfkraft '0',
gebaeude '0',
forschung '0',
gesamt '0' WHERE uid '9';# MySQL lieferte ein leeres Resultat zurück (d.h. null Zeilen).
UPDATE highscoretemp SET kampfkraft '0',
gebaeude '18590',
forschung '255000',
gesamt '273590' WHERE uid '13';# MySQL lieferte ein leeres Resultat zurück (d.h. null Zeilen).
UPDATE highscoretemp SET kampfkraft '0',
gebaeude '327',
forschung '0',
gesamt '327' WHERE uid '14';# MySQL lieferte ein leeres Resultat zurück (d.h. null Zeilen).
UPDATE highscoretemp SET kampfkraft '0',
gebaeude '344',
forschung '0',
gesamt '344' WHERE uid '18';# MySQL lieferte ein leeres Resultat zurück (d.h. null Zeilen).
UPDATE highscoretemp SET kampfkraft '0',
gebaeude '4893',
forschung '125000',
gesamt '129893' WHERE uid '19';# MySQL lieferte ein leeres Resultat zurück (d.h. null Zeilen).
UPDATE highscoretemp SET kampfkraft '0',
gebaeude '327',
forschung '0',
gesamt '327' WHERE uid '21';# MySQL lieferte ein leeres Resultat zurück (d.h. null Zeilen). 

MIt Folgenden export habe ich das erstellt
PHP-Code:

-- 
-- 
Tabellenstruktur für Tabelle `highscoretemp`
-- 

CREATE TABLE `highscoretemp` (
  `
uidint(20NOT NULL default '0',
  `
gebaeudeint(30NOT NULL default '0',
  `
kampfkraftint(30NOT NULL default '0',
  `
forschungint(30NOT NULL default '0',
  `
gesamtint(30NOT NULL default '0',
  
PRIMARY KEY  (`uid`)
TYPE=MyISAM;

-- 
-- 
Daten für Tabelle `highscoretemp`
-- 

INSERT INTO `highscoretempVALUES (10000);
INSERT INTO `highscoretempVALUES (50000);
INSERT INTO `highscoretempVALUES (90000);
INSERT INTO `highscoretempVALUES (130000);
INSERT INTO `highscoretempVALUES (140000);
INSERT INTO `highscoretempVALUES (180000);
INSERT INTO `highscoretempVALUES (190000);
INSERT INTO `highscoretempVALUES (210000); 

Darauf folgt beim PHPMyAdmin die ansage:
PHP-Code:

SQL-Befehl
-- 
-- 
Tabellenstruktur für Tabelle `highscoretemp`
-- 
CREATE TABLE `highscoretemp` (
`
uidint20 NOT NULL default '0',
`
gebaeudeint30 NOT NULL default '0',
`
kampfkraftint30 NOT NULL default '0',
`
forschungint30 NOT NULL default '0',
`
gesamtint30 NOT NULL default '0',
PRIMARY KEY ( `uid` )
TYPE MYISAM ;# MySQL lieferte ein leeres Resultat zurück (d.h. null Zeilen).
-- 
-- 
Daten für Tabelle `highscoretemp`
-- 
INSERT INTO `highscoretemp`
VALUES 1000) ;# Betroffene Datensätze: 1
INSERT INTO `highscoretemp`
VALUES 5000) ;# Betroffene Datensätze: 1
INSERT INTO `highscoretemp`
VALUES 9000) ;# Betroffene Datensätze: 1
INSERT INTO `highscoretemp`
VALUES 13000) ;# Betroffene Datensätze: 1
INSERT INTO `highscoretemp`
VALUES 14000) ;# Betroffene Datensätze: 1
INSERT INTO `highscoretemp`
VALUES 18000) ;# Betroffene Datensätze: 1
INSERT INTO `highscoretemp`
VALUES 19000) ;# Betroffene Datensätze: 1
INSERT INTO `highscoretemp`
VALUES 21000) ;# Betroffene Datensätze: 1 

Die uid sind schon exististierende user.
Was jetzt falsch ist weiß ich nicht. Achso ich habe uid als Primärkey gewählt damit ich keine versehentlichen doppelten einträge bekomme.

Bitte helft mir ich habe grade keine ahnung was kaputt ist.

Mfg Sk3y

Sk3y 12.11.2006 18:44:55

AW: Leeres Resultat?
 
ok warum das system immer 0 bei kampfkraft hat weiß ich jetzt (alle errechneten daten haben 0, von daher kann kein < 0 rauskommen :) )

Mfg Sk3y

BenniG. 13.11.2006 09:45:54

AW: Leeres Resultat?
 
Wenn beim Update nichts zu tun ist, also entweder keine Änderungen am Datensatz vorgenommen werden müssen, oder es keinen Datensatz gibt auf den das WHERE passt gibts
immer "# MySQL lieferte ein leeres Resultat zurück (d.h. null Zeilen)."
Wenn was zu tun ist gibts:
"# Betroffene Datensätze: x"

Lässt du das Update vielleicht mehrmals laufen?

meikel (†) 13.11.2006 11:15:20

AW: Leeres Resultat?
 
Zitat:

Zitat von Sk3y (Beitrag 91914)
Was jetzt falsch ist weiß ich nicht.

Ich auch nicht, weil es bei mir klappert:
Code:

--
-- Tabellenstruktur für Tabelle `highscoretemp`
--

CREATE TABLE `highscoretemp` (
  `uid` int(20) NOT NULL default '0',
  `gebaeude` int(30) NOT NULL default '0',
  `kampfkraft` int(30) NOT NULL default '0',
  `forschung` int(30) NOT NULL default '0',
  `gesamt` int(30) NOT NULL default '0',
  PRIMARY KEY  (`uid`)
) TYPE=MyISAM;

--
-- Daten für Tabelle `highscoretemp`
--

INSERT INTO `highscoretemp` (`uid`, `gebaeude`, `kampfkraft`, `forschung`, `gesamt`) VALUES (1, 6994241, 0, 5060000, 12054241);
INSERT INTO `highscoretemp` (`uid`, `gebaeude`, `kampfkraft`, `forschung`, `gesamt`) VALUES (5, 3051706, 0, 3810000, 6861706);
INSERT INTO `highscoretemp` (`uid`, `gebaeude`, `kampfkraft`, `forschung`, `gesamt`) VALUES (9, 0, 0, 0, 0);
INSERT INTO `highscoretemp` (`uid`, `gebaeude`, `kampfkraft`, `forschung`, `gesamt`) VALUES (13, 18590, 0, 255000, 273590);
INSERT INTO `highscoretemp` (`uid`, `gebaeude`, `kampfkraft`, `forschung`, `gesamt`) VALUES (14, 327, 0, 0, 327);
INSERT INTO `highscoretemp` (`uid`, `gebaeude`, `kampfkraft`, `forschung`, `gesamt`) VALUES (18, 344, 0, 0, 344);
INSERT INTO `highscoretemp` (`uid`, `gebaeude`, `kampfkraft`, `forschung`, `gesamt`) VALUES (19, 4893, 0, 125000, 129893);
INSERT INTO `highscoretemp` (`uid`, `gebaeude`, `kampfkraft`, `forschung`, `gesamt`) VALUES (21, 327, 0, 0, 327);

Also: Script her.

Sk3y 13.11.2006 14:30:34

AW: Leeres Resultat?
 
@meikel
dein elan in aller ehre aber ich glaube kaum das die datenbank hier das mitmacht. Die datei ist 12 kb groß. ausserdem funzt das script wobei noch fehler in der berechnung der punkte drin sind :( Das liegt zwar an der fehlerhaften register.php aber das wird noch gefixt.


@Benni, sicher lass ich das mehrmals laufen. und zwar für die ersten 500 leute die in der datenbank registriert sind. Also in einer for-schleife.

Mfg Sk3y

BenniG. 13.11.2006 14:36:03

AW: Leeres Resultat?
 
Hä?
Weißt du eigentlich selbst was du tust, bzw. was GENAU Du willst?
Was war eigentlich nochmal GENAU das Problem? Funktionieren die Updates denn?
Die Updates kannst du erst nach den Inserts machen, das ist klar, oder?

Sk3y 13.11.2006 14:40:10

AW: Leeres Resultat?
 
die updates funktionieren.

Mich stört der fehler der bei phpmyadmin ausgegen wird. Ups ich ahbe wohl vergessen zu schreiben:

danke Benni für die antwort.

Mfg Sk3y

PS:
aso, ja ich weiß was ich will und tu ;)
ja und das ich erst ein insert gemacht haben muss um ein update durchzuführen ist mir auch klar :) (habe leider gottes 3 jahre sql an einer schule hinter mir).

xabbuh 13.11.2006 15:12:59

AW: Leeres Resultat?
 
Zitat:

Zitat von Sk3y (Beitrag 91958)
Mich stört der fehler der bei phpmyadmin ausgegen wird.

Von welchem Fehler redest du überhaupt?

Sk3y 13.11.2006 18:08:22

AW: Leeres Resultat?
 
sry aber wer des lesens mächtig ist

Beim tablecreate und beim update:
# MySQL lieferte ein leeres Resultat zurück (d.h. null Zeilen).


aber Benni hat es mir ja shcon erklärt hat sich also erledigt

Mfg Sk3y

xabbuh 13.11.2006 18:30:10

AW: Leeres Resultat?
 
Zitat:

Zitat von Sk3y (Beitrag 91972)
sry aber wer des lesens mächtig ist

Da dies kein Fehlermeldung ist, war deine Beschreibung nicht ganz klar. Ich hatte deinen letzten Beitrag so verstanden, dass dein Problem noch nicht gelöst war.


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:56:38 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.