Frage zu PHP/HTML im Bezug mit Rasbian

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hi Leute,

    ich kenne mich nicht mit PHP/HTML aus jedoch wollte ich ein Webinterface machen.
    Ich habe alles per Photoshop gemacht mit dem Slice werkzeug die Buttons ausgewählt etc
    und wollte jetzt Fragen wie ich aus den Bildern z.B:

    <img src="Bilder/wlanon.jpg" width="160" height="39" alt=""></td>

    Einen Button mache, ich habe das natürlich vorher Gegoogelt doch ich verstehe nur Bahnhof.

    Desweiteren wollte ich wissen ob es die Möglichkeit gibt das wenn ich einen Button habe (JDownloader an) das die PID gespeichert wird und ich dann per Shellexecute beim drücken auf den Button JDownloader aus das Programm schließe.

    Anhang:
    Die Webseite: http://www74.zippyshare.com/v/Ryfwy1lV/file.html

    Danke im vorraus! :)

  • Einen Button macht man ganz einfach mit <button> in HTML5, oder mit <input type="button" /> in HTML4 ;)

    Wenn dann auch noch eine Aktion passieren soll, entweder einen Link davor einbauen mit <a>, oder mit JavaScript <button onclick="executeMyJavaScript();" /> bzw. <input type="button" onclick="executeMyJavaScript();" />

    Das mit dem JDownloader und der PID verstehe ich nicht :-/

    Einmal editiert, zuletzt von Tronn (21. Mai 2015 um 09:55)

  • wie müsste ich denn das genau schreiben wenn ich das hier ausführen möchte

    <?php
    if (isset($_POST['Skript1'])) { shell_exec("sudo bash /media/nas/wlanoff.sh"); }
    ...
    ?>


    Und um den Jdownloader part nochmal zusammen zufassen ich möchte einen Button der JDownloader schließt, ich meine das es in C# irgendwas mit PID hieß oder so um den Process zu identifizieren.

    Danke für die EXTREM schnelle Antwort! :)

  • Meines Wissens nach geht das in PHP so nicht. Externe PIDs kannst du in PHP nicht abfragen. Alles was ich dazu in der PHP Dokumentation finde ist auf den eigenen Prozess bezogen.
    Buttons erstellst du in HTML und änderst deren Erscheinungsbild in CSS.

    MfG;

    Einmal editiert, zuletzt von YellowDream14845 (21. Mai 2015 um 10:08)

  • In dem Thread zu meigrafd's Tutorial über JDownloader hat jemand gemeint, das sei ziemlich langsam und PyLoader wäre empfehlenswert.

    Ich kenne JDownloader jetzt nicht so richtig, aber läuft das zufällig als Daemon? Kann man das nicht vielleicht mit "/etc/init.d/jd stop" oder sowas anhalten? Scheint mir viel sauberer zu sein ... Ich hab hier was in einem Synology-Forum dazu gefunden.

    Python Script mit PHP ausführen: stackoverflow.com

    Einmal editiert, zuletzt von Tronn (21. Mai 2015 um 10:22)

  • ich habe einen banana pi pro und habe den jdownloader als headless version am laufen, mein pi ist ohne kühlung nach 2 tagen ohne pause downloden und entpacken immer bei 30°C

    java -Djava.awt.headless=true -jar ~/jdownloader/JDownloader.jar


    jedoch verstehe ich das mit dem button noch nicht da ich 0 plan von web entwicklung habe muss ich <button> </button> um das Bild packen und dann mit css den button definieren?

  • So geht das mit dem Button/Input/Link und ggf. einem Bild:
    http://jsfiddle.net/4dhLfg5y/

    Wie du das jetzt stylen willst, ist eine Frage für ein HTML/CSS-Forum ;)

    Ansonsten denke ich, dass die Frage, wie man JDownloader per PHP Script beenden kann, durch die Links oben geklärt sein dürfte, richtig? :)

    Einmal editiert, zuletzt von Tronn (21. Mai 2015 um 10:36)

  • Soweit ich das sagen kann, ist <button> jetzt Best Practise, weil Crawler das besser "verstehen" können. Man kann sicher Buttons auch mit CSS und Bildern stylen, aber das ist, wie gesagt, für ein HTML/CSS-Forum, denke ich. Jedenfalls hat's nichts mit Raspbian zu tun ;)


  • So geht das mit dem Button/Input/Link und ggf. einem Bild:
    http://jsfiddle.net/4dhLfg5y/

    Wie du das jetzt stylen willst, ist eine Frage für ein HTML/CSS-Forum ;)

    Ansonsten denke ich, dass die Frage, wie man JDownloader per PHP Script beenden kann, durch die Links oben geklärt sein dürfte, richtig? :)

    so etwas meinte ich :)

    kann ich denn einfach mein html script nehmen die datei in .php ändern und
    <?php
    if (isset($_POST['Skript1'])) { shell_exec("sudo bash /media/nas/wlanoff.sh"); }
    ...
    ?>

    am anfang packen und

    <a href="#" onclick="Skript1;"><img src="BILD" height="XYZ" /></a>

    schreiben und dann wird Skript eins gestartet?

    Einmal editiert, zuletzt von masterholdy (21. Mai 2015 um 10:57)

  • Also, wir sprechen hier über vier bzw. eigentlich drei verschiedene Sprachen:
    - JavaScript (nicht zu verwechseln mit Java. Das sind zwei Baustellen!)
    - PHP
    - Python
    (- HTML ... ist nur zum Design und keine Programmiersprache ... man kann z.B. nicht addieren)

    JavaScript kann nur etwas beim Nutzer auf dem Computer machen. Das ist das, was in <a onclick="executeMyJavaScript();"> steht.

    Wenn du auf dem Server etwas ausführen willst, zum Beispiel ein Script auf dem Pi ausführen, dann musst du das mit Python machen, wobei PHP die Anweisung an den Server gibt, das Python-Script auszuführen.

    Hast du mal bei stackoverflow.com, wie oben empfohlen, nachgelesen?

    Und falls es nicht um Python, sondern um die Shell geht (ich glaub, ich hab dich missverstanden), dann hast du das ja eigentlich schon richtig gemacht. Hier der Artikel bei php.net erklärt ja eigentlich, dass das sehr einfach ist :)

    Einmal editiert, zuletzt von Tronn (21. Mai 2015 um 11:05)

  • ich habe die ganzen start/stopp sachen schon als shell datei erstellt doch ich verstehe auch mit den tutorials nicht wie ich das bild anclickbar mache und zum if (isset($_POST['XYZ']))
    komme.

    Gibt es vllt. eine IDE für PHP die einen die Sache erleichtert?

  • Äh, nein, sowas gibt es nicht.

    Ok, nochmal von vorne: Du erstellst eine PHP-Datei test.php mit folgendem Inhalt:


    Passt, oder? Die {} bei den If-Abfragen kann man sicher weglassen, weil nur eine Zeile danach kommt, aber egal ;)

    Und dann liest du dir mal durch, wie eine HTML-Datei aufgebaut sein muss ... folgende Tags sind Basis:
    - HTML
    - head
    - body
    - a
    - button
    <br /> ... kann ich dir sagen, ist ein Zeilenumbruch ;)

    Einmal editiert, zuletzt von Tronn (21. Mai 2015 um 11:36)

  • Ich hatte hier änlihe Probleme Programme die über PHP gestartet werden zu beenden.
    Letztlich hab ich es einfach so gelöst, das ich dafür mit screen arbeite.
    Ich öffne einfach nen screen und gebe diesen nen namen mit:
    screen -AmdS name ort/hierDieBatchDieAusgeführtWerdenSoll.sh

    Zum beenden geb ich dann nen:
    screen -S name -X quit
    ab mit nem anderen Link / Button.

    Probleme gäbe es dann erst wenn das Programm schon läuft und noch einmal gestartet wird, da dann an dem Namen von Screen nummern angehängt werden.

    Aber das zu verhindern ist ja mit php / javascript möglich.

  • Hallo,

    hab nicht sonderlich viel Ahnung von Websprachen und sicherlich geht das eleganter, aber das hier tut's:

    PHP
    <?php
    if (isset($_POST['Skript1'])) { shell_exec("sudo bash /media/nas/wlanon.sh"); }
    ?>
    <form action="" method="post">
    <button type="submit" name="Skript1" style="border:0px solid black; background-color: transparent;">
    <img src="Bilder/wlanon.jpg" width="170" height="39" alt=""></td>
    </button>
    </form>

    Die index.html benennst du dazu um in index.php

  • Eleganter geht immer, aber das tut doch seinen Zweck ;)
    Bist du der alleinige Nutzer dieses Webinterfaces oder ist es auch über das Internet ansprechbar?

  • ist nur lokal :)


    Hallo,

    hab nicht sonderlich viel Ahnung von Websprachen und sicherlich geht das eleganter, aber das hier tut's:

    PHP
    <?php
    if (isset($_POST['Skript1'])) { shell_exec("sudo bash /media/nas/wlanon.sh"); }
    ?>
    <form action="" method="post">
    <button type="submit" name="Skript1" style="border:0px solid black; background-color: transparent;">
    <img src="Bilder/wlanon.jpg" width="170" height="39" alt=""></td>
    </button>
    </form>

    Die index.html benennst du dazu um in index.php


    GENAU DAS MEINTE ICH! :) du bist mein retter! DANKE

    Einmal editiert, zuletzt von masterholdy (21. Mai 2015 um 14:26)

  • ok zurück zu dem JDownloader problem :)

    mit "ps aux | grep JDownloader" kann ich die pid auslesen und mit
    "kill $pid" kann ich JDownloader schließen, könnte mir jemand sagen wie ich eine shell script erstelle das mir die pid automatisch ausließt gibt es hier sowas wie regex?

    Hier der ps ausschnitt:
    root@lemaker:~# ps aux | grep JDownloader
    root 2806 13.2 7.3 323136 65944 ? Sl 15:04 0:33 java -Djava.awt.headless=true -jar /media/nas/JDownloader2/JDownloader.jar
    root 3397 0.0 0.0 3548 816 pts/0 S+ 15:08 0:00 grep Djav

    in diesem fall währe die gewünsche pid 2806

    EDIT://

    ok ich bin noch etwas weitergekommen
    habe ein shell script mit
    ps aux | grep ^$USER | grep JDownloader | gawk '{print $2}'
    erstellt dann sieht die ausgabe so aus:

    root@lemaker:/media/nas# ./pidjd.sh
    3602
    4330

    die obere nummer ist in diesem fall die pid von jdownloader wie kann ich die automatisieren jetzt als variable speichern?

    Einmal editiert, zuletzt von masterholdy (21. Mai 2015 um 17:27)

  • Das könnte klappen:

    Code
    ps aux | grep -v "grep" | grep "JDownloader" | awk '{print $2}'


    bzw.

    Code
    kill $(ps aux | grep -v "grep" | grep "JDownloader" | awk '{print $2}')

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!