[ erweiterte Suche ]

»Bräuchte da mal hilfe - DB-Abfrage

preg_replace / preg_match BenchmarkNeues Thema eröffnenNeue Antwort erstellenDas Thema einem Freund empfehlenDas Thema druckenHBCI Client in PHP realisieren - ohne Java und Co.
Seite 1 von 1 [5 Beiträge]
AutorNachricht
Trainee 


Name: Ronny
Geschlecht:
Fahrzeug: ED7
Anmeldedatum: 25.03.2006
Beiträge: 25
Chats: 4
Wohnort: Wiesbaden / FFM


Meine eBay-Auktionen:
25.02.2009, 20:53


Hi leuz. Ich bin grad dabei nen Browsergame zu coden. Es geht im groben um Autorennen.
Nun hab ich ein Problem mit der einberechnung der Tuningteile.

Er berechnet die Teile einfach nicht mit zu den standardwerten dazu.

Der Code sieht wiefolgt aus:

   Zitat:

# Berechnung Wagen 1
# PS

$ps_tuning = $wagen1["ps"];

$query2 =
mysql_query("SELECT * FROM tuning_gekauft WHERE userid = '$user1'");

while ($array2 = mysql_fetch_array($query2))
{
$ps_tuning2 =
mysql_fetch_array(mysql_query("SELECT * FROM tuning WHERE id = '$array2[teileid]' AND wagenid = '$w1id'"));
$ps_tuning = $ps_tuning + $ps_tuning*$ps_tuning2
['ps']/100;
}

echo $ps_tuning."<br>".$wagen1["ps"]."<br><br>"; # Ausgabe zum testen

$w1ps = $ps_tuning;



Kann mir da jemand helfen?
Nach obenprofil pn email aim yim
Administrator 


Name: Marc
Geschlecht:
Anmeldedatum: 28.08.2004
Beiträge: 39593
Chats: 11125
Wohnort: Hennef


Meine eBay-Auktionen:
25.02.2009, 21:05


mach mal das:
   Code:
# Berechnung Wagen 1
# PS
$ps_tuning = $wagen1["ps"];

$query2 = mysql_query("SELECT * FROM tuning_gekauft WHERE userid = '$user1'");

while ($array2 = mysql_fetch_array($query2))
{
echo("SELECT * FROM tuning WHERE id = '$array2[teileid]' AND wagenid = '$w1id'");
$ps_tuning2 = mysql_fetch_array(mysql_query("SELECT * FROM tuning WHERE id = '$array2[teileid]' AND wagenid = '$w1id'"));
$ps_tuning = $ps_tuning + $ps_tuning*$ps_tuning2['ps']/100;
}

echo $ps_tuning."<br>".$wagen1["ps"]."<br><br>"; # Ausgabe zum testen

$w1ps = $ps_tuning;


Du schreibst, dass er die Werte nicht addiert. Ich gehe daher davon aus, dass die while()-Bedingung nicht zutrifft.

Dann eine sicherheitsrelevante Frage. Woher nimmst Du $user1? Kommt die aus der URL per $_GET? Dann solltest Du auf den Wert in der DB-Abfrage intval() anwenden, damit man nicht über die URL andere Sachen mit Deiner DB-Abfrage machen kann, die Du nicht so gerne hättest ;)
Nach obenprofil pn email
Trainee 


Name: Ronny
Geschlecht:
Fahrzeug: ED7
Anmeldedatum: 25.03.2006
Beiträge: 25
Chats: 4
Wohnort: Wiesbaden / FFM


Meine eBay-Auktionen:
25.02.2009, 21:18


Hier noch alles zu user1

   Zitat:
# User 1
$user1 = $_GET["user1"];
$w1id = $_GET["auto1"];
$user1 = mysql_fetch_array(mysql_query("SELECT * FROM benutzerdaten WHERE id = '$user1'"));
$wagen1 = mysql_fetch_array(mysql_query("SELECT * FROM wagen WHERE id = '$w1id'"));



Und das mit dem Echo geht net :( Ich verzweifel grad voll :(
Nach obenprofil pn email aim yim
Administrator 


Name: Marc
Geschlecht:
Anmeldedatum: 28.08.2004
Beiträge: 39593
Chats: 11125
Wohnort: Hennef


Meine eBay-Auktionen:
25.02.2009, 21:32


Das ist nicht gut ;)

Also erstmal eine Grundregel in Sachen Sicherheit:
Verlasse Dich nie auf das was per $_GET, $_POST, $_COOKIE und Co. kommt!

Wenn Du DB-Abfragen hast, solltest Du IMMER die Werte wie folgt sichern:
Zahlen: intval($var)
Zeichenketten: mysql_real_escape_string($string)

D.h. für Dein genanntes Beispiel:
   Code:
# User 1
$user1 = $_GET["user1"];
$w1id = $_GET["auto1"];
$user1 = mysql_fetch_array(mysql_query("SELECT * FROM benutzerdaten WHERE id = " . intval($user1)));
$wagen1 = mysql_fetch_array(mysql_query("SELECT * FROM wagen WHERE id = " . intval($w1id)));


Du könntest natürlich auch vorher auf die Variablen intval() anwenden, aber es ist wichtiger, dass man es sich bei den DB-Abfragen einprägt. Wie Du siehst, habe ich übrigens die Anführungszeichen weggelassen. Diese brauchst Du nicht, wenn Du mit Zahlen vergleichst z.B.:

Vergleich mit Zahl:
   Code:
SELECT * FROM table WHERE id = 1


Vergleich mit Zeichenkette:
   Code:
SELECT * FROM table WHERE name = 'mustermann'


Da Du kein Ergebnis für mein Echo bekommen hast heißt das, das die Bedingung für while() nicht erfüllt wird.

Daher teste die 1. Abfrage, in dem Du sie per echo() ausgibst (in die Zeile vor "$query2 ="):
   Code:
echo("SELECT * FROM tuning_gekauft WHERE userid = '$user1'");


Du solltest übrigens so arbeiten:
   Code:
mysql_fetch_array($query, MYSQL_ASSOC)


MYSQL_ASSOC sorgt dafür, dass nur die Spaltennamen ausgegeben werden. Siehe:
http://de2.php.net/mysql_fetch_array

Gruß
Nach obenprofil pn email
Trainee 


Name: Ronny
Geschlecht:
Fahrzeug: ED7
Anmeldedatum: 25.03.2006
Beiträge: 25
Chats: 4
Wohnort: Wiesbaden / FFM


Meine eBay-Auktionen:
27.02.2009, 11:34


aha

Wieder was gelernt :D Ich danke dir. Man lernt in PHP halt nie aus :hrhr:


Werd ich dann gleich mal ausprobieren, wenn ich dazu komme :)
Nach obenprofil pn email aim yim
Gast 

27.02.2009, 11:34


Mach mit!

Wenn Dir die Beiträge zum Thema "Bräuchte da mal hilfe - DB-Abfrage" gefallen haben oder Du noch Fragen hast oder Ergänzungen machen möchtest, solltest Du Dich gleich bei uns anmelden:

    » Anmelden

Registrierte Mitglieder genießen die folgenden Vorteile:
✔ kostenlose Mitgliedschaft
keine Werbung
✔ direkter Austausch mit Gleichgesinnten
✔ neue Fragen stellen oder Diskussionen starten
✔ schnelle Hilfe bei Problemen
✔ Bilder und Videos hochladen
✔ und vieles mehr...

Verwandte Suchbegriffe

"mysql_fetch_array" "mysql_query", civic ep1, preg_replace, autorennen dtec
Nach oben
Seite 1 von 1 [5 Beiträge]
Neues Thema eröffnenNeue Antwort erstellen
Ähnliche BeiträgeRe:HitsLetzter Beitrag
Teilenummer abfrage wer Kennt des teil
Hallo Freunde meine Frage ist arbeitet jemand bei einem VW Autohaus und kann mir bitte sagen zu welchem Auto die Teile gehören hab nehmlich die zwei endtöpfe Geschenk bekommen und soll damit machen was ich will also dachte ich mir ich Verkauf die da ich...
von Giova
017228.05.2011, 08:10
Giova
Brauche mal Hilfe
HI there, ich möchte bei meinem Switf BJ 94 die Lautsprecher ersetzen. Hab mir dazu ein PIONEER DEH-1300MP Radio gekauft. Da das Auto über sage und schreibe 2 verbaute Lautsprecher 100mm verfügt, möchte ich es auch bei einem 2.1 Sound belassen. Ich...
von steve91
410202.01.2011, 15:03
flobraa4
Brauche mal hilfe
Hey leutz habe seit 4 tage mein auto nicht gefahren hat in garage gestanden ! und nun heute wollte ich los fahren und merke das , dass mein auto zwischen 2400 - 3000 rpm keine leistung mehr hat ! erl äuft teilweise auf 3 töpfe so bald ich bei 3500 -...
von hoti
511213.06.2009, 10:53
Der-Pate
Bräuchte mal Hilfe...
Hallo euch allen hier im Forum... Ich bräuchte mal Hilfe denn ich will meinen Civic Ep1 im Innenraum noch verschönern und würde gerne einen Lederschaltsack und ein Bezug für die Handbremse haben. Vielleicht könnt ihr mir ja helfen. Denn ich weiß nicht...
von JBMomo
515212.04.2009, 19:22
haz
Bräuchte mal hilfe...
Also, Ich habe vor mir in meinen MA8 diese Dichtung einzubauen die von 75ps auf 90ps steigert. Nun die frage welche Dichtung :) kann mir wer da ne artikelnr. sagen? Dann noch zu sachen Swap... Kann mir wer sagen ob mein Motor Swap tauglich ist und...
von HH[MA8]
228907.10.2006, 19:26
Der_Ronny
brauche mal Hilfe
servus... ich will mir die facelift scheinis holen, damit mein civic mal nen bissl besser da steht so jetzt habe ich im netz verschiedene gefunden... einmal hier die günstige variant.e.... und hier die orginalen von Honda...
von white-shark
730605.09.2008, 18:12
Raiden
Brauch mal Hilfe
Moin Männers, also ich hab da ein kleines Problem mit dem Insi: Komisches ruckeln bei Gas- Weg- und Annahme. Deutlich spürbar so im 4. Gang ab 70 km/h, Fuss ganz vom Gas, dann Pedal ganz leicht antippen, geht ein ruckeln durchs ganze Auto, merkt sogar...
Seite 2, 3von Opelmän
23120631.05.2011, 18:36
Kuci Khan
Brauch mal Eure hilfe
Tach Leutz! Traurige Neuigkeiten... der CRX ist schrott! :cry: :cry: Der TÜV hat in geschrottet.. sozusagen.... War beim Fahrwerk eintragen und der Depp hat die Haube nicht zugemacht... und ich doof denke die werden wohl Haube zumachen...
Seite 2von Botte
1951404.04.2006, 16:40
Botte
brauch mal eure hilfe
hey leute es geht um den bösen blick...ich möcht gern an meinem eg3 n bösen blick haben und hab hier einschweißbleche aber das is ne echte sauarbeit und dabei versau ich mir die motorhaube...ich wollte gern solche blenden zum dranschrauben haben aber...
von honda-power1986
034117.02.2006, 12:54
honda-power1986
Brauche mal eure Hilfe
Nabend Leute :laugh: Habe mal ne Frage :-) Hatte vor kurzen mein Heizungsbedientel ausgebaut und da muste ich ja denn Bautenzug los machen , ne . So nun kommt aber mein Problemchen wie gehtn das ding wieder rein ? Wenn ich denn reinmache...
von mofu
711509.08.2009, 18:50
Team Sound Addiction
© 2004 - 2012 www.programmierer-forum.de (srv02) | Communities | Impressum