Auch ne Abfrage

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Auch ne Abfrage

    Hallo zusammen,

    ich habe ein kleines Problem.
    Ich schreibe gerade ein Replay uploader.
    Die Spieler können ein Replay hochladen.
    Der Filename wird automatisch geschrieben:
    spieler1(rasse)_vs_spieler2(rasse).w3g
    Nun möchte ich wenn diese beiden Leute nochmal gegen einander Spielen das File nicht überschrieben wird sondern eine Versionsnummer hinten drann gehängt wird.

    Das mache ich mit einem Max query...
    Code:
    $query = mysql_db_query($dbase,
    "SELECT MAX(id) 
    FROM `$table` 
    WHERE `spieler1_team1` = '$Spieler1' 
    AND `spieler1_team1_rasse` = '$Rasse_Spieler1'
    AND `spieler1_team2` ='$Spieler2'
    AND `spieler1_team2_rasse` ='$Rasse_Spieler2' ");
    ich habe mir den Query mit einem echo ausgegeben und ihn in phpMyAdmin ausgeführt und hier gehts. Nur im Quelltext geht es nicht da kommt ein Fehler

    Warning: mysql_result() [function.mysql-result]: id not found in MySQL result index 4 in /home/www/htdocs/d-creationz.de/TEST/test.php on line 162

    hier die Zeile 157-165
    PHP-Code:
    $file_name $Spieler1 "(" $Rasse_Spieler1 ")" "_vs_" $Spieler2 "(" $Rasse_Spieler2 ").w3g";
    $uploaddir =  $_SERVER["DOCUMENT_ROOT"].$dir_1vs1;
    $db mysql_connect($dbserver,$dbuser,$dbpw);
    $query mysql_db_query($dbase,
    "SELECT MAX(id) 
    FROM `
    $table
    WHERE `spieler1_team1` = '
    $Spieler1
    AND `spieler1_team1_rasse` = '
    $Rasse_Spieler1
    AND `spieler1_team2` ='
    $Spieler2
    AND `spieler1_team2_rasse` ='
    $Rasse_Spieler2' ");
    print 
    "$query = mysql_db_query($dbase,\
    "
    SELECT MAX(id
    FROM `$table
    WHERE `spieler1_team1` = '$Spieler1' 
    AND `spieler1_team1_rasse` = '$Rasse_Spieler1' 
    AND `spieler1_team2` ='$Spieler2' 
    AND `spieler1_team2_rasse` ='$Rasse_Spieler2' \");";
    $id  mysql_result($query,0,"id");
    $query mysql_db_query($dbase,"SELECT `nummer` FROM `$table` WHERE `id` = '$id' ");          
    $nummer  mysql_result($query,0,"nummer");
    $db mysql_close($db); 



    was mach ich Falsch?
    ps: ich hoffe ich bin im richtigen Forum
    Zuletzt geändert von Wotan; 07.08.2003, 12:29.
    Ein blue screen ist nicht immer was schlimmes... es hängt nur davon ab wo er zu sehen ist !
    www.d-creationz.de

  • #2
    Das ist ein simples Problem. Es liegt an deinem SQL Query.
    Du verwendest den MAX() Befehl, dadurch wird der name des Feldes geändert, bekommt einen neues Alias. Dein Problem kannst du mit "AS" beseitigen.

    PHP-Code:
    $file_name $Spieler1 "(" $Rasse_Spieler1 ")" "_vs_" $Spieler2 "(" $Rasse_Spieler2 ").w3g";
    $uploaddir =  $_SERVER["DOCUMENT_ROOT"].$dir_1vs1;
    $db mysql_connect($dbserver,$dbuser,$dbpw);
    $query mysql_db_query($dbase,
    "SELECT MAX(id) AS id
    FROM `
    $table
    WHERE `spieler1_team1` = '
    $Spieler1
    AND `spieler1_team1_rasse` = '
    $Rasse_Spieler1
    AND `spieler1_team2` ='
    $Spieler2
    AND `spieler1_team2_rasse` ='
    $Rasse_Spieler2' ");
    print 
    "$query = mysql_db_query($dbase,
    "
    SELECT MAX(id
    FROM `$table
    WHERE `spieler1_team1` = '$Spieler1' 
    AND `spieler1_team1_rasse` = '$Rasse_Spieler1' 
    AND `spieler1_team2` ='$Spieler2' 
    AND `spieler1_team2_rasse` ='$Rasse_Spieler2' ");";
    $id  mysql_result($query,0,"id");
    $query mysql_db_query($dbase,"SELECT `nummer` FROM `$table` WHERE `id` = '$id' ");          
    $nummer  mysql_result($query,0,"nummer");
    $db mysql_close($db); 
    Ans Ziel kommt nur der, der auch eins hat. www.e-cross.info

    Kommentar

    Lädt...
    X