ERLEDIGT
JA
JA
ANTWORTEN
19
19
ZUGRIFFE
309
309
EMPFEHLEN
-
Ok, also bei var_dump gibt er mir für Borussia Dortmund (id 2) die $pos = 16 aus. Sie muss aber definitiv 13 sein. So ist es auch in der tabelle angezeigt.
ich schicke dir die mysql per PN.
Die sortierung habe ich geändert.
PHP-Code:<?php
error_reporting(E_ALL);
function getPosition($team){
$sql = "
SELECT
pos
FROM
(
SELECT
@pos:=@pos+1 AS pos,
fifa_m.id
FROM
(SELECT @pos:=0) AS vars,
fifa_mannschaften AS fifa_m
ORDER BY
fifa_m.punkte DESC, fifa_m.tordifferenz DESC, fifa_m.tore DESC, fifa_m.spiele DESC, fifa_m.siege DESC, fifa_m.unentschieden DESC, fifa_m.gegentore ASC
) AS rangliste
WHERE
rangliste.id = '{$team}'";
$result = mysql_query($sql);
return mysql_result($result, 0);
}
$selectedTeam = '2';
$pos = getPosition($selectedTeam);
var_dump($pos);
echo "{$sql}\n";
echo mysql_error();
if($pos=="13") {
echo 'Du hast deinen erhofften Platz ('.$pos.') erreicht'; } else {
echo 'Du hast dein ziel nicht erreicht.';
}
?>
-
Sorry, mein Fehler! Habs dank der Tabelle gefunden. In meiner ausfürhlichen Beschreibung habe ich den 1. Liga-Filter erwähnt und mal drin. Aber nachher im Schluss-SQL-Statement wieder vergessen. Oh mann, wo hatte ich blos mein Kopf
Und noch zum wissen: Wie ich das herausgefunden habe? Ich habe das innere SQL mit * erweitert undlaufen lassen um die gesammte Rangliste anzuschauen und schon habe ich gesehenPHP-Code:$sql = "SELECT
pos
FROM
(
SELECT
@pos:=@pos+1 AS pos,
fifa_m.id
FROM
(SELECT @pos:=0) AS vars,
fifa_mannschaften AS fifa_m
WHERE
fifa_m.liga = '1. Euroliga'
ORDER BY
fifa_m.punkte DESC,
fifa_m.tordifferenz DESC,
fifa_m.tore DESC,
fifa_m.spiele DESC,
fifa_m.siege DESC,
fifa_m.unentschieden DESC,
fifa_m.gegentore ASC
AS rangliste
WHERE
rangliste.id = {$id};";
Code sql:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
-- Mein Testscript SELECT @pos:=@pos+1 AS pos, fifa_m.* FROM (SELECT @pos:=0) AS vars, fifa_mannschaften AS fifa_m -- Zuerst ohne den WHER-Teil. Da war die ID dann auf Rang 16 und 2-Liga Gruppen weiter vorn WHERE fifa_m.liga = '1. Euroliga' ORDER BY fifa_m.punkte DESC, fifa_m.tordifferenz DESC, fifa_m.tore DESC, fifa_m.spiele DESC, fifa_m.siege DESC, fifa_m.unentschieden DESC, fifa_m.gegentore ASC
Du kannst das Script das du mir zur Verfügung gestellt hast wieder entfernen.---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
Ok, vielen dank. Aber irgenetwas habe ich ejtzt wieder übersehen.. :S
Ausgabe:PHP-Code:<?php
error_reporting(E_ALL);
function getPosition($team){
$sql = "SELECT
pos
FROM
(
SELECT
@pos:=@pos+1 AS pos,
fifa_m.id
FROM
(SELECT @pos:=0) AS vars,
fifa_mannschaften AS fifa_m
WHERE
fifa_m.liga = '1. Euroliga'
ORDER BY
fifa_m.punkte DESC,
fifa_m.tordifferenz DESC,
fifa_m.tore DESC,
fifa_m.spiele DESC,
fifa_m.siege DESC,
fifa_m.unentschieden DESC,
fifa_m.gegentore ASC
AS rangliste
WHERE
rangliste.id = {$id};";
$result = mysql_query($sql);
return mysql_result($result, 0);
}
$selectedTeam = '2';
$pos = getPosition($selectedTeam);
var_dump($pos);
echo "{$sql}\n";
echo mysql_error();
if($pos=="13") {
echo 'Du hast deinen erhofften Platz ('.$pos.') erreicht'; } else {
echo 'Du hast dein ziel nicht erreicht.';
}
?>
Code :1 2
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in /srv/www/httpd/phost/f/com/pytalhost/fifaplace/web/fifaliga/viewpage.php(35) : eval()'d code on line 29 bool(false) Resource id #148 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AS rangliste WHERE rangliste.id = 2' at line 21Du hast dein ziel nicht erreicht.
-
Oh mann - heute sollte ich echt niemandem helfen - so viele C&P-Fehler die ich mache (muss ja jeweils das ganze wieder so anpassen dass es in den Code passt)
Dieses mal ist es ein )
Code sql:1 2 3 4
-- ersetze AS rangliste -- durch ) AS rangliste
---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
Danke, du hast es echt drauf und wir wahnsinnig geholfen
Ähnliche Themen
-
Position eines Wortes in einem String ermitteln
Von spex im Forum Visual Basic 6.0Antworten: 1Letzter Beitrag: 28.12.07, 10:44 -
Position von CEdit ermitteln und neue Position setzen
Von olliss im Forum VisualStudio & MFCAntworten: 1Letzter Beitrag: 15.09.05, 19:30 -
Position eines Browserfensters ermitteln
Von zeppo im Forum Javascript & AjaxAntworten: 2Letzter Beitrag: 07.03.05, 07:51 -
Position inherhalb eines Array ermitteln
Von Funky_MF im Forum PHPAntworten: 1Letzter Beitrag: 18.02.05, 18:24 -
Position eines Bildes ermitteln
Von barbapapa im Forum Javascript & AjaxAntworten: 5Letzter Beitrag: 18.11.04, 14:42





Zitieren

Login






[PHP][Snippet] Array zu XML konvertieren