Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Zapis do pliku
Forum PHP.pl > Forum > Przedszkole
pjamorski
Eh to znowu ja atakuje party.gif

Mam plik index.php, formularz

Kod


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"[url="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"]http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd[/url]">
<html>
<head>
<title>wysyłanie zamówienia</title>
<meta name="P. Jamorski" content="Przemysław Jamorski">
<!--<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">-->
<meta HTTP-EQUIV="Content-type" content="text/html; charset=Windows-1250">
<meta name="Authoring-tool" content="Notepad & Crimson Editor">
<meta name="keywords" content="World of Warcraft">
<meta name="description" content="Nieoficjalna  strona WoW">
</head>
<body>
<?php
$formularz = "
<form action='create.php' method='post'>
  Imie: <input type='text' name='imie'/><br>
  Nazwisko: <input type='text' name='nazwisko'/><br>
  Pseudonim: <input type='text' name='pseudo'/><br>
  Haslo: <input type='password' name='haslo'/><br>
  <input type='submit' value='rejestruj'><input type='reset'/>
</form>  
";
echo $formularz;
?>

</body></html>


i skrypt w pliku create.php który chcę żeby zapisywał mi te dane do pliku, tworząc plik o nazwie użytkownika, ale coś jest nie tak. Nie tworzy się ten plik

Kod
<?php
$name = $_REQUEST['imie'];
$surname = $_REQUEST['nazwisko'];
$nickname = $_REQUEST['pseudo'];
$password = $_REQUEST['haslo'];
$zbior = array($name,$surname,$nickname,$password);

$plik_zapis = fopen($name,'r+'); // otwarcie pliku do zapisu o nazwie logującego się
fwrite($plik_zapis, 'aaa');
fclose($plik_zapis);
?>


Takie byki mi wywala:
Warning: fwrite(): supplied argument is not a valid stream resource in C:\wamp\www\trening\create.php on line 9

Warning: fclose(): supplied argument is not a valid stream resource in C:\wamp\www\trening\create.php on line 10

Mogę prosić o pomoc? Czy ten mój zapis wszystkich danych z tablicy pod zmienną $zbior jest prawidłowy? dzięki
bluesqad
Cytat(pjamorski @ 20.02.2008, 09:39:41 ) *
$plik_zapis = fopen($name,'r+'); // otwarcie pliku do zapisu o nazwie logującego się


A może spróbuj tak:
  1. <?php
  2. $plik_zapis = fopen($name,'w+');
  3. ?>


w+ - otwarcie pliku do zapisu, poczynajac od początku. Jeśli plik istnieje zawartość zostanie skasowana, jeśli nie będzie próba utworzenia pliku.
a+ - otwarcie pliku do dodawania zawartości i odczytu. Do pliku zostają dopisane dane na końcu a jeśli plik nie istnieje to będzie próba utworzenia.

Bo r+ nie tworzy pliku tylko dopisuje jeśli plik już istnieje.
pjamorski
Mam coś takiego:

Kod
<?php
$name = $_REQUEST['imie'];
$surname = $_REQUEST['nazwisko'];
$nickname = $_REQUEST['pseudo'];
$password = $_REQUEST['haslo'];
$zbior = array('imie' => $name,'nazwisko' =>$surname,'pseudo' =>$nickname,'haslo' =>$password);
$plik_zapis = fopen($name.'.txt','w+'); // otwarcie pliku do zapisu o nazwie logującego się
fwrite($plik_zapis, $zbior);
fclose($plik_zapis);
?>


Pod zmienna zbior zaimplementowalem tablice. Jednak do pliku nie moge zapisac tych danych sciana.gif

czy mogę prosić o małą pomoc?
kszychu
Nie zapiszesz tablicy do pliku. Zrób na niej najpierw implode().

I kontynuuj w jednym wątku, a nie tworzysz kolejne.
Kowalikus
przed zapisem tablicy do pliku uzyj serialize" title="Zobacz w manualu PHP" target="_manual a przy późniejszym odczycie unserialize" title="Zobacz w manualu PHP" target="_manual
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.