Frage von SeMoDrix, 49

PHP: Website mit Textfeldern und Button die die Werte der Textfelder in einen Befehl packt, welcher dann ausgeführt wird - habt Ihr Tipps?

Ich habe mir ein bash script zusammengebastelt, das so funktioniert: upload.sh {titel} {dateiname} {uhrzeit} Das Script lädt eine Datei mit dem Angegebenem Dateinamen und Titel zu einer angegebenen Uhrzeit auf YouTube hoch. Nun bin ich gerade dabei ein kleines lokales Webinterface dafür zu basteln, wo dann 3 Textfelder und ein button sind. Soweit bin ich nun auch schon, nur wie bekomme ich es hin, dass diese drei variablen in einem mit php auszuführenden Befehl gepackt werden und auf Button-druck ausgeführt werden? Falls ihr keine Antwort oder Tipps habt, könnt ihr mir ein Forum empfehlen, an dass ich mich wenden kann?

EDIT:

Hier der Code: http://paste2.org/N76KHVxV

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von maximilianus7, 11

@php-script zeile 3: du hast, obwohl du im <?php - modus bist, nochmals in php umgeschaltet. was macht das für einen sinn? statt

<?php echo $_POST["title"]; ?>
kannst du doch einfach
$_POST['title']
schreiben. die einfaches quotes ' müssen noch durch " ersetzt werden. am sichersten sind noch { }  um die $POST-ausdrücke. also 

if (isset($_POST['buttonO1'])) 
  shell_exec("/home/pi/upload-now.sh {$_POST['title']} {$_POST['file']} {$_POST['time']}")
Kommentar von SeMoDrix ,

Vielen dank dafür, doch es funktioniert leider immer noch nicht. Ich verstehe nur nicht warum es nicht geht. Hier der verbesserte code: http://paste2.org/kLPw6G8b Vielleicht liegt es an den den inputs oder dem Button?

Kommentar von maximilianus7 ,

was funktioniert nicht?

- wird das upload.sh nicht gestartet?

- fehlermeldungen?

mach doch mal vorrübergehend ein print_r($_POST) in die 2. zeile

problematisch für den shell-aufruf könnten leerzeichen in den parametern sein - z.b. title

Antwort
von Stunter, 27

Was willst du genau machen? Einfach an ein PHP-Skript die drei Textfelder übergeben und in PHP diese Werte dann verwenden?

Dazu musst du um die Textfelder und den Button ein <form>-Element machen. Das könnte so aussehen:

<form action="deine-PHP-Seite.php" method="post">
Hier kommen deine Textfelder und dein Button
</form>

Du musst jedem Textfeld einen Namen geben. Das machst du mit dem name-Attribut:

<input type="text" name="titel" />

Der Button sollte auch kein normaler Button sein. Nimm am besten diesen Code:

<input type="submit" />

Dieser sendet alles gleich ab. In deinem PHP-Script kannst du auf die Variablen dann mit

$_POST["Textfeld-Name"]

zugreifen. Also beispielsweise:

$_POST["titel"]

Das gibt dann immer den eingegebenen Text zurück.

Ich hoffe, ich konnte helfen!

 ~ Stunter

Antwort
von maximilianus7, 23

wenn du uns dein webinterface (html /php) auf www.paste2.org zur verfügung stellen könntest?  

Kommentar von SeMoDrix ,
Kommentar von SeMoDrix ,

Und hier der Code des Scripts, welcher durch die Seite ausgeführt werden soll: http://paste2.org/0H6W9sXm

Keine passende Antwort gefunden?

Fragen Sie die Community