Vom PC aus - ja / vom Server aus - nein

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

  • Vom PC aus - ja / vom Server aus - nein

    Zuerste einmal frohes Neues und achtung ich bin noch ein ziemlicher n00b was PHP angeht...habe allemöglichen CodeSchnipsel durchwühlt und immer mal bei php.net geguckt was die ganzen Befehle denn nun anstellen, und ich verstehe eigentlich auch was das Script macht das ich da zusammengeklebt habe

    Ich hoffe ihr könnt mir bei einem kleinen Problem helfen. Es geht um einen Downloadcounter. Ich poste mal das ganze Script, ist ja nicht viel.

    PHP-Code:
    <?

    include 'data.php';

    $link = mysql_connect($mysql_host, $mysql_user, $mysql_password) 
        or die("Could Not Connect To DatabseHost");

    mysql_select_db($mysql_dbname, $link) or die("Could Not Select The Database");

    if (!empty($file)) {
        $result = mysql_query("SELECT filename FROM dl_count")
            or die("Query Failed");

        while ($row = mysql_fetch_assoc($result)) {
            if ($row["filename"] == $file) {
                $result = mysql_query("UPDATE dl_count SET downloads=downloads+1 WHERE filename='" . $file . "'");

                chdir ("$cat");
                header ("Content-Type: application/rar");
                header ("Content-Length: ".filesize($file));
                header ("Content-Disposition: attachment; filename=$file");
                readfile ("$file");
            }
        }
    }


    mysql_close($link);

    ?>
    Aaaaalso, soweit klappt das ganze, jedenfalls wenn ich das Script vom Rechner aus anspreche....also wenn ich den Link
    download.php?cat=kategorie&file=datei.rar aus ner Datei vom Rechner aus aufrufe. Sobald ich das normal im Browser aufrufe, oder über nen link auf meiner HP wirds merkwürdig.

    Mal klappts, mal klappts nicht...abundzu bekomme dann nämlich ein

    PHP-Code:
    Warningmysql_fetch_assoc(): supplied argument is not a valid MySQL result resource .....line 14 
    serviert. Mal bei diesem File, mal bei jenem File..... für mich unverständlich wieso....richtig deuten kann ich die Meldung eh nicht

    Hoffe jemand gibt mir 'nen Schubbs in die richtige Richtung

    Olli

  • #2
    guck mal was mysql_error liefert!

    Kommentar


    • #3
      und dann ist es auch sinnvoll(er), wenn du in der SELECT auch ein WHERE filename = '...' angibst.

      im moment lässt du dir alles zurückgeben und in einer while-schleife prüfen. das ist schwachsinnig.

      und dann schliesse ich mich dem tobi noch an....
      mache aus ...
      PHP-Code:
      or die("Query Failed"); 
      .... einfach mal ....
      PHP-Code:
      or die("Query Failed: ".mysql_error()); 
      ... und du siehst, wo der fehler ist.
      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


      Kommentar


      • #4
        _while ($row = mysql_fetch_assoc($result)) {
        $result = mysql_query("UPDATE dl_count SET downloads=downloads+1 WHERE filename='" . $file . "'");
        Sollten vielleicht nicht beide $result heißen.

        Offe

        Kommentar


        • #5
          Original geschrieben von Offe1
          Sollten vielleicht nicht beide $result heißen.

          Offe
          oops, da ist was dran ....nu klappt alles

          Danke für eure Hilfe

          Olli

          Kommentar

          Lädt...
          X