Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Skrypt który wyśle dane z www na ftp.
Forum PHP.pl > Forum > PHP
ViC
Witam.
Od paru dni poszukuje takiego skryptu jak w temacie, znalazlem tylko to:

Cytat
<?php
$imie = trim($_POST['imie']);
$nazwisko = trim($_POST['nazwisko']);
$numer = trim($_POST['numer']);

//wpisz dane do polaczenia ftp
$ftp_server = 'serwerftp';
$ftp_user_name = 'login';
$ftp_user_pass = 'haslo';

if(empty($pole1) and empty($pole2)) {
//formularz sobie dopasuj wedle woli
echo '<form action="" method="post">
<input type="text" name="imie" style="width: 200px;" /><br />
<input type="text" name="nazwisko" style="width: 200px;" /><br />
<input type="text" name="numer" style="width: 200px;" /><br />
<input type="submit" value="Zapisz" />
</form>';
}
else {
$dane = "imie: ".$imie." nazwisko: ".$nazwisko." numer: ".$numer."\n";
$file = "baza.txt";
$fp = fopen($file, "a");
flock($fp, 2);
fwrite($fp, $dane);
flock($fp, 3);
fclose($fp);
echo "Dane zostały zapisane!<br />";
}
$conn_id = ftp_connect($ftp_server);
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
if ((!$conn_id) || (!$login_result)) {
echo "Połączenie FTP się nie powiodło!";
exit;
}
$upload = ftp_put($conn_id, baza.txt , baza.txt , FTP_BINARY);
ftp_close($conn_id);

?>


Wyskakuje błąd: Warning: ftp_put(bazatxt) [function.ftp-put]: failed to open stream: No such file or directory in /home/xxxx/public_html/index.php on line 36

Powiedzcie czy to bedzie dzialalo ? Jezeli tak prosze o wskazowki jak to uzupelnic.
Prosze rowniez o inne pewne skrypty.
klocu
Cytat
Warning: ftp_put(bazatxt) [function.ftp-put]: failed to open stream: No such file or directory in /home/xxxx/public_html/index.php on line 36

Tak trudno przetłumaczyć i zauważyć, że w linii 36 jest jakiś dziwny zapis?

  1. $upload = ftp_put($conn_id, baza.txt , baza.txt , FTP_BINARY);

Jak już to przy takim zapisie co najmniej nazwy plików w apostrofy albo cudzysłów, ale wyżej masz:
  1. $file = "baza.txt";

więc co to za problem go tutaj użyć?

--
Działać raczej średnio - dlaczego?
  1. if(empty($pole1) and empty($pole2))

sprawdzasz coś co nie istnieje w żadnej linijce skryptu.

Ogólnie cała koncepcja jest mocno zastanawiająca. Bo jeśli wyśle formularz i nie przejdzie on walidacji to i tak będzie podjęta próba wysłania pliku na serwer.
Nieważne - plik istnieje czy nie, ale jednak.
Z tym przerwaniem skryptu też jest to takie sobie, nie lepiej wysłać plik jeśli się połączy z serwerem niż ubijać skrypt jeśli się to nie uda?
ViC
Ja jestem zielony w te klocki moglbys mi ulozyc taki skrypcik lub zmodyfikowac ten ? Bede bardzo wdzieczny lub zaplace smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.