Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Zapis informacji do pliku tekstowego
Forum PHP.pl > Forum > Przedszkole
Zahara
Robie ćwiczenie z książki PHP i MySQL listing 2.2 Na końcu kodu mam takie coś

CODE
// otwarcie pliku w celu dopisywania
$wp = fopen("$DOCUMENT_ROOT/../zamowienia.txt", 'ab');

flock($wp, LOCK_EX);

if (!$wp) {
echo "<p><strong> Zamówienie Państwa nie może zostać przyjęte w tej chwili.
Proszę spróbować później.</strong></p></body></html>";
exit;
}

fwrite($wp, $ciagwyjsciowy, strlen($ciagwyjsciowy));
flock($wp, LOCK_UN);
fclose($wp);

echo "<p>Zamówienie zapisane.</p>";
?>
</body>
</html>


Gdy wypełniam formularz po czym zatwierdzam wszystko wydaje się działać jak należy(wyskakuje komunikat zamówienie zapisane). lecz gdy otwieram plik zamowienia.txt w środku jest pusto ,nic się nie zapisało. Nie wiem dlaczego Proszę o pomoc lub wskazówkę smile.gif
Tartut
Wydaje mi się że $ciągwyjściowy jest pusty. Musisz to sprawdzić dodając echo $ciagwyjsciowy; za fclose($wp); Czy to jest na pewno cały listing?
Zahara
Do postu powyżej : Zrobiłem tak i wyświetliło się to co miało jednakże
zauważyłem że coś nie tak jest gdy zmienię lokalizacje pliku textowego z

CODE
$wp = fopen("$DOCUMENT_ROOT/../zamowienia.txt", 'ab');


na

CODE
$wp = fopen("$DOCUMENT_ROOT/../zamowieniaa/zamowienia.txt", 'ab');


po poprzednim utworzeniu pliku zamowieniaa.

Cały kod PHP to :

CODE
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<?php
// utw�rz kr�tkie nazwy zmiennych
$iloscopon = $_POST['iloscopon'] ;
$iloscoleju = $_POST['iloscoleju'] ;
$iloscswiec = $_POST['iloscswiec'] ;
//$jak = $_POST['jak'] ;
$adres = $_POST['adres'] ;
$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];
$data = date('H:i, jS F Y');






?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Cz�ci samochodowe Janka - wyniki zam�wienia</title>
</head>

<body>
<h1 >Cz�ci samochodowe Janka </h1>
<h2 >Wyniki zam�wienia </h2>

<?php
$ilosc = $iloscoleju + $iloscopon + $iloscswiec ;

if( $ilosc == 0 ){
echo '<p style="color:red">';
echo 'Na poprzedniej stronie nie zosta�o z�o�one �adne zam�wienie !<br /> ';
echo '</p>';
exit;
}



echo '<p>Zam�wienie przyj�te o ' ;
echo date('H:i, jS F Y');
echo '</p>' ;

echo '<p>Zam�wienie pa�stwa wygl�da nast�puj�co: </p>' ;


if( $iloscopon > 0)
echo $iloscopon. ' opon<br />';
if( $iloscoleju > 0)
echo $iloscoleju. ' butelek oleju <br />';
if( $iloscswiec > 0 )
echo $iloscswiec. ' �wiec <br />';



// obliczanie ilo�ci



echo '<p> Zam�wionych cz�ci razem : ' ;
echo "$ilosc" ;
echo ' <br /></p>';

if($iloscopon < 10)
$znizka = 0 ;
elseif( $iloscopon >= 10 && $iloscopon <= 49 )
$znizka = 5;
elseif( $iloscopon >= 50 && $iloscopon<= 99 )
$znizka = 10;
elseif( $iloscopon >= 100)
$znizka = 15;



// Obliczanie ceny netto

$wartosc = 0.00 ;

define('CENAOPON' , 100);
define('CENAOLEJU' , 10);
define('CENASWIEC' , 4);

$wartosc = $iloscopon * CENAOPON
+ $iloscswiec * CENASWIEC
+ $iloscoleju * CENAOLEJU ;

echo ' Cena netto : ' .number_format($wartosc, 2). ' PLN <br />' ;


// Obliczanie ceny brutto

$stawkavat = 0.23;
$wartosc = $wartosc * (1 + $stawkavat);
echo ' Cena brutto: ' .number_format($wartosc, 2). ' PLN <br />';
echo "<p> Adres wysy�ki to " .$adres. "</p>";

$ciagwyjsciowy = $data. "\t" .$iloscopon. "opon" .$iloscoleju. "butelek oleju\t "
.$iloscswiec. "swiec zap�onowych \t" .$wartosc. "PLN\t" .$adres. "\n" ;

/*
// Sk�d wiadomo �e dowiedzia� si� o stronie



switch($jak) {
case "a" :
echo "<p>Sta�y klient.</p>" ;
break;

case "b" :
echo "<p>Z reklamy telewizyjnej.</p>" ;
break;
case "c" :
echo "<p>Z ksi��ki telefonicznej.</p>" ;
break;
case "d" :
echo "<p>Znajomy.</p>" ;
break;
default :
echo "<p>�r�d�o nieznane</p>";
break;

}
*/





$wp = fopen("$DOCUMENT_ROOT/../zamowienia.txt", 'ab');

flock($wp, LOCK_EX);

if (!$wp) {
echo "<p><strong> Zam�wienie Pa�stwa nie mo�e zosta� przyj�te w tej chwili.
Prosz� spr�bowa� p�niej.</strong> </p> </body> </html>" ;
exit ;
}
else {
fwrite($wp, $ciagwyjsciowy);
flock($wp, LOCK_UN);
fclose($wp);
echo $ciagwyjsciowy;


echo"<p>Zam�wienie zapisane.</p>";

}


?>


</body>
</html>


Kod HTML to :

CODE
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>





<body>



<form action="przetworzzamowienie.php" method="post" >
<table border="0" >
<tr bgcolor="#cccccc">
<td width="300"> Produkt </td>
<td width="167"> Ilość</td>

</tr>




<tr>
<td >Opony </td>
<td align="center"> <input type="text" name="iloscopon" size="3" maxlength="3" />
</td>
</tr>




<tr>
<td>Olej</td>
<td align="center"> <input type="text" name="iloscoleju" size="3" maxlength="3" />
</td>
</tr>




<tr >
<td>Świece zapłonowe</td>
<td align="center" > <input type="text" name="iloscswiec" size="3" maxlength="3" />
</td>
</tr>



<tr>
<td>Adres</td>
<td align="left"><input type="text" name="adres" size="40" maxlength="40" /></td>
</tr>



<tr>
<td colspan="2" align="center"> <input type="submit" value="Złóż zamówienie" />
</td>
</tr>





</table>
</form>
</body>
</html>
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.