php-phreaks: echtes php für mp3-toplist

  • hallo php-phreaks
    es ist ja bekanntlich ein großer unterschied ob man eine sprache
    selber verstehen/interpretieren kann, oder ob man sie auch
    selbst sprechen kann - bei programmiersprachen ist das finde ich
    sehr ähnlich - besonders bei php

    ich gehöre jedenfalls zu der sorte die ein script zeile für zeile
    interpretieren kann, jedoch beherrsche ich den satzbau und
    die grammatik überhaupt nicht!

    Nun zu meinem Problem (bestimmt nur ein paar zeilen, für den ders kann)

    Ich habe eine scriptsoftware für eine topList und möchte
    das geprüft wird ob der eingereichte link auch wirklich
    dazu führt, das eine mp3 datei aufgemacht wird im browser.
    das ist schon alles. dieses script verwende ich
    http://www.skoom.de/demo/

    Ich denke das man da an der add.php ein paar zeilen einfügen muss,
    aber wie gesagt, ich spreche die sprache nicht - kanns aber nachvollziehen.
    Für helfende Antworten vielen Dank!

  • vielen Dank der nachfrage - ich war da etwas undeutlich - sorry

    also die erste lösung mit der endung wäre schonmal hilfreich!
    da aber mp3-files zum beispiel auch so aufgerufen werden können
    http://www.keinlink.com/top/out.php?id=5
    wäre es cool wenn der code einfach kurz checkt ob
    der eingereichte link zu einer mp3-datei führt -
    wenn nicht könnte eine meldung kommen- no mp3-file
    muss aber nicht . mercy

  • naja wenn man eine mp3 bei dir in die liste speichert, kann man sich ja schnell die zeit nehmen den absoluten pfad zur mp3 datei zu holen (steht ja im quellcode von den out.php?id=5 seiten).

    also so kannst du zumindest die endung prüfen, sollte gehen musst halt mal testen:

    das erste "if" ist nur eine korrektur von deinem, hast die klammern vor dem "if" teil geschrieben...
    das zweite "if" trennt die letzten vier zeichen von "$siteurl" (also ".mp3") und prüft ob diese ".mp3" ist.

    ersetz einfach dein code wo du die "?" icons reingesetzt hast (inkl. die "$siteurl" if-abfrage) durch diesen.

    so long

  • hey super! vielen dank

    ich dachte mir das es kein stundenaufwand
    sein würde - in diesem fall klappt also nur wenn der eingereichte url
    tatsächlich mit .mp3 endet - das ist schon sehr gut so

    was bedeutet das >>>>(substr($siteurl, -1, 4)<<<<<<
    und wofür stehn die ausrufezeichen, vielleicht lern ichs ja doch noch :)

    für diese schnelle antwort werd ich das forum hier wärmstems weiterempfehlen - nochmals danke

  • klappt ganz gut - leider werden die anderen link-endungen trotzdem
    aufgenommen - es kommt zwar die meldung:

    Die angegebene Datei muss mp3 sein!

    aber die eintragung funktioniert trotzdem.

    :( doch nicht so einfach wie ich dachte

  • doch doch, hab einfach nicht so weit überlegt. ersetz diesen code:

    durch diesen:

    jetzt werden alle bedingungen geprüft, und falls ein fehler auftritt, wird dieser in die variable $error geschrieben.
    am schluss wird die variable geprüft, falls sie inhalt hat (= ein fehler), wird dieser ausgeben, wenn sie leer ist (= kein fehler) - wird der restliche code ausgeführt.

    Code
    // Falls error aufgetreten ist
    if ($error) {
      echo "Es ist ein Fehler aufgetreten:
    
    
    ".$error;
    }


    Zitat von ANU

    was bedeutet das >>>>(substr($siteurl, -1, 4)<<<<<<

    >>

    Zitat von phore

    das zweite "if" trennt die letzten vier zeichen von "$siteurl" (also ".mp3") und prüft ob diese ".mp3" ist.

    Zitat von ANU

    und wofür stehn die ausrufezeichen, vielleicht lern ichs ja doch noch :)


    die ausrufezeichen heissen "nicht gleich".

    beispiel - if ($error) {} heisst "wenn error true ist". man könnte es auch so schreiben if ($error = true) {}
    beispiel 2 - if (!$error) {} heisst "wenn error false ist oder kein inhalt hat". man könnte es auch hier anders schreiben if ($error = false) {}


    alles klar?
    so long

  • THX! phore you :)
    irgendwie fehlt noch ein zwischenschritt

    jetzt spuckt er alle fehlermeldungen aus
    ohne überhaupt die chance zu geben
    url, passwort usw. überhaupt einzugeben

    wenns dich interessiert schick ich dir gern
    den link um das mal live! zusehn - wil hier
    nur keine schleichwerbung machen

    Peace!

  • ups .. lösch das ruhig raus -- un bevor du dir den kopf zerbrichst
    evtl . sind schon links in der liste die nicht den kritierien entsprechen
    .. das test ich jetzt mal THX

  • also - alle links verweisen direkt auf mp3s
    leider kann man im moment keine sachen dazuschreiben
    see it self!

    ps.
    grüsse an die helvetischen nachbarn
    ich dachte der link geht per PM raus

  • sorry- schon wieder ich-

    captcha fehlt noch - wenn ich den captcha-code
    aus der alten add.php einfüge kommt:


    Fatal error: Cannot instantiate non-existent class: captcha in /srv/www/web2/html/top/add.php on line 21

  • auf den captcha könnt ich verzichten wenn gewährleistet wäre das nur mp3-dateien als link eingetragen werden können - ausser die fangen auch noch mit audio-spambots an

  • also man kann jetzt ohne captcha //wird so dargetellt: {captcha}//
    links eintragen - egal auf was die verweisen
    irgendwie scheint das doch umfangreicher zu sein als ich auf den ersten blick gedacht hätte

    thx @ phore - evtl. kann ich dich ja irgendwie entschädigen für den zeitaufwand

  • also das mit dem captcha musst du selber schauen, das ist nicht in diesem code. das problem mit der abfrage sollte so klappen:

  • FETT - Jetzt filtert das script die eingereichten links -
    bewundersnwert wenn sich jemand sowas mal kurz aus den fingern saugen kann - MERCY und alles gute Dir und deinen Lieben

    IT WORKS!

  • noch ne klitze kleine frage!?

    in der add.php geben die leute einen text ein
    dieser wird nach dem hinzufügung in die sql-datenbank geschrieben
    und beim aufrufen der index.php wieder angezeigt.

    WIE aktiviert man html in dieser Anzeige ??

    :?: vielleicht hier :?:
    $resultat[content] = str_replace("{table3}", $table[3], $resultat[content]);

    oder tapp ich da völlig im dunkeln ?