HTTP Post + PHP

  • 4 Antworten
  • Letztes Antwortdatum
S

SeatRichi

Neues Mitglied
4
Hallo!

Ich habe Probleme mit HTTP Post, eher mit PHP!

Ich würde gerne eine txt datei an meinen Webserver senden... Funktioniert auch aber leider kann ich durch das gefundene PHP Script nur einen Namen für diese Datei erstellen!
Hier das Script:

<?php
$file = "%21SpielerNummer.txt";
$handle = fopen($file, 'w') or die('Cannot open file: '.$file);
$data = "";

foreach ($_POST as $key => $value)
{
$data = $data.$value."\n";
}
fwrite($handle, $data);

fclose($handle); print("0");

?>


Wie ihr bei $file seht, habe ich schon probiert diese so zu benennen wie es in der Variablen bei Tasker %21SpielerNummer steht!

Leider erstellt er mir jetzt immer nur die datei %21SpielerNummer.txt !!!

Ich will eine eigene txt für jeden Spieler von 1-10...
Bei Tasker an sich kein Problem durch die Variablen, aber den Upload durch HTTP Post bekomme ich nicht so hin.
Heute bin ich zB. Spieler 5, also werden meine Daten in die Datei 5.txt geschrieben, mein Bruder spieler 1 usw.
Bei nächsten mal bin ich dann zB. Spieler 9... Das funktioniert durch Variablen

HTTP Post bei Tasker schaut so aus:

Server:port: http://homepage.de/....
Pfad:
Data / File: data=%21SpielerNummer
data2=%21Spieler
....

bzw. habe ich es auch schon so probiert

Data / File: %21SpielerNummer.txt
Cookies:
User Agent:
Timeout: 10
Inhalts Typ: application/x-www-form-urlencoded
Ausgabedatei:


Auf meinen Webserver wird immer die Datei %21SpielerNummer.txt erstellt!

Gibt es eine möglichkeit den PHP Script zu sagen, dass es die Datei nach der Variablen in Tasker benennt???

LG
Richi
 
das PHP-Skript läuft auf deinem Webserver und dieser kennt die zugewiesenen Variablen deines Tasker-Taks nicht. Ich würde beim Aufruf der URL des Servers noch eine GET-Variable übergeben und diese dann im PHP-Skript dem Dateinamen zuordnen.

im Task bei "Pfad" die Variable übergeben, getrennt durch ein Fragezeichen

index.php?datei=dernamederdatei


Code:
<?php
...
$dateiname = $_GET["datei"];
...
?>
 
Hallo!

Hab es jetzt probiert aber bekomme es nicht wirklich so hin... Könntest du es genauer beschreiben?

LG Richard
 
Wenn Du uns verrätst was Du gemacht hast würde es helfen.
 
"HTTP POST" wird sich in Tasker ähnlich verhalten wie "HTTP GET".
ich benutze sowas Ähnliches(nur halt ohne Dateien hoch zu laden) für meine Smarthomesteuerung.

Tasker:
Code:
A19: HTTP Get [ Server:Port:aabbcc.myfritz.net Pfad:index.php?[COLOR="red"][B]token[/B][/COLOR]=[COLOR="SeaGreen"][B]%Token[/B][/COLOR]&smart=ona2 Attribute: Cookies: User Agent:Chrome/39.0.2171.95 Timeout:10 MIME Typ: Ausgabe Datei: Trust Any Certificate:An Task Weiter Ausführen Nach Fehler:An ]

Server:
Code:
<?php
  $token = $_GET["[COLOR="red"][B]token[/B][/COLOR]"];
...
?>


edit:
Jetzt muss ich mal aus eigenem Interesse fragen, ob die Datei per "HTTP POST" auch ankommt und nicht nur 0 Byte groß ist? Ich habe es eben ums Verrecken nicht hinbekommen, eine Datei hoch zu laden. Ich habe es mit den oben genannten Skriptzeilen probiert und ganz einfach per "$_FILES[..]"-Befehl. Schiebe ich hingegen eine Datei per Website und POST-Formular auf das selbe Skript auf den Server, kommt diese auch an. Mit Tasker klappt das nicht.
 
Zuletzt bearbeitet:

Ähnliche Themen

N
Antworten
0
Aufrufe
3.076
Nico35
N
M
  • MaGu64
Antworten
15
Aufrufe
2.233
MaGu64
M
E
  • exmerci
Antworten
3
Aufrufe
1.296
exmerci
E
Zurück
Oben Unten