girilen veri .txt dosyasının içine kaydedilmiyor

Web tabanlı uygulama geliştirme araçları(PHP, ASP vb...) ile ilgili konuları buraya yazabilirsiniz.
Cevapla
4hm3t
Üye
Mesajlar: 10
Kayıt: 03 Oca 2008 04:57
Konum: Gaziantep

girilen veri .txt dosyasının içine kaydedilmiyor

Mesaj gönderen 4hm3t »

öncelikle böyle güzel bi paylaşım sitesini kuran arkadaşları tebrik ederim

php ye yeni başladım sorun şu:

Kod: Tümünü seç

<HTML>
	<HEAD>
	<meta http-equiv=\"content-type\" content=\"text/html; charset=ISO-8859-9\">
	<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1254\">
	</HEAD>
	<BODY>
	<FORM ACTION="http://localhost/deneme.php" METHOD="post">

        Adın Soyadın: <input type="text" name="adi"><br><br>
	Mesajınız:<BR><TEXTAREA NAME="mesaj" ROWS=10 COLS=30 WRAP=virtual></TEXTAREA>
	
        <BR><BR><BR>
	<INPUT TYPE="SUBMIT" VALUE="GONDER"> <INPUT TYPE="RESET" VALUE="Tümünü sil!">
	</FORM>
	</BODY>
	</HTML>
bu html dosyam,
<form action="http://localhost/deneme.php" methot="post" > diyerek deneme .php yi çalıştırarark "asd.txt" dosyasını oluşturup kullanıcının gireceği verileri "asd.txt" içine kaydetmesini sağlamaya çalışıyorum

"deneme.php" dosyası:

Kod: Tümünü seç

<?php
$yol="asd.txt";

$metin= $http_post_vars_mesaj;
$adi=$http_post_vars_adi;

$dosya = fopen ($yol , 'w') or die ("Dosya açılamadı!");

fwrite($dosya,$adi); \\asd.txt dosyasına kaydı buradan girmeye çalışıyorum

echo("<br><br>");

fputs($dosya,$metin); \\asd.txt dosyasına eklemeyi buradan girmeye çalışıyorum

fclose($dosya);
?> 
SONUC: asd.txt dosyası oluşuo ama kullanıcının girdiği veri, oluşturulan dosyaya işlemio

veriyi .txt dosyasının içne nasıl kaydedebilrim ??
En son 4hm3t tarafından 22 Oca 2008 02:35 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Php 5.0 hakkında döküman lazım yardmcı olan arkadaşlara minettar kalrım
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

4hm3t yazdı:şu acemi kardeşinizie yadımcı olun
Büyük bir zevkle...
Bu linkten başlarsan iyi olur...
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
ikutluay
Üye
Mesajlar: 2341
Kayıt: 03 Tem 2007 10:13

Mesaj gönderen ikutluay »

$adi=$http_post_vars_adi;

bu yanlış...

$_POST[adi]

deneyin..
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
ikutluay
Üye
Mesajlar: 2341
Kayıt: 03 Tem 2007 10:13

Mesaj gönderen ikutluay »

+ kontrol için fpust ta rastgele bişi yazdırın bence değişken boş diye bişi yazmıyor.

birde artık hem form hem işleye kodu aynı sayfada yazmak mumkun. yazım tekniğinizi değiştirin.
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
4hm3t
Üye
Mesajlar: 10
Kayıt: 03 Oca 2008 04:57
Konum: Gaziantep

Mesaj gönderen 4hm3t »

ikutluay yazdı:+ kontrol için fpust ta rastgele bişi yazdırın bence değişken boş diye bişi yazmıyor.

birde artık hem form hem işleye kodu aynı sayfada yazmak mumkun. yazım tekniğinizi değiştirin.
hocam bilgilendirmen için çok teşkr ederim ama dediğin gibi denedim

$adi=$_post[adi];

+

yazdırmak için fputs(); yerine fwrite(); yazdım ama sonuç yine aynı yardımının devamı gelirse çok sevinirim
Php 5.0 hakkında döküman lazım yardmcı olan arkadaşlara minettar kalrım
ikutluay
Üye
Mesajlar: 2341
Kayıt: 03 Tem 2007 10:13

Mesaj gönderen ikutluay »

echo ile ekrana yazdır böylece değişken boşmu dolumu anlarsın.

diğer dediğime geince biraz araştıracaksın ama mantık bu. tourtursan rahat edersin...

kodun başında if !$_POST[] diyip ekrana formu görüntüle. böylece kodun ilk çalıştığında post boş olacağından bu bölüm çalışır ve form ekrana gelir.
else kısmında ise şimdi yaptıüğın gibi verileri işlersin...

formun antion kısmında ise $PHPSELF ile dosyayı kendisine redirect edeceksinç böylece çok temiz kod yazarsın.
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
4hm3t
Üye
Mesajlar: 10
Kayıt: 03 Oca 2008 04:57
Konum: Gaziantep

Mesaj gönderen 4hm3t »

eyw hocam çok saol oldu
Php 5.0 hakkında döküman lazım yardmcı olan arkadaşlara minettar kalrım
ikutluay
Üye
Mesajlar: 2341
Kayıt: 03 Tem 2007 10:13

Mesaj gönderen ikutluay »

tam kodu burayada atarsan diğer insanlarda faydalanır.. forumun amacı bu yani.
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
4hm3t
Üye
Mesajlar: 10
Kayıt: 03 Oca 2008 04:57
Konum: Gaziantep

Mesaj gönderen 4hm3t »

haklısın hocam düşünemedik..

işte kod
(bu kod bilgisayarda çalışıyor hatasız ama sitede yayınlıyorum çalışmıyor :?: http://www.bilgikar.com - reklam ver linkine tıklayın)

Kod: Tümünü seç

<?php

$yol="php\reklam.txt";

$adi=$_GET[adi];
$adres=$_GET[adres];
$metin=$_GET[mesaj];
$aciklama=$_GET[aciklama];
$alt="
";
$dosya = fopen ($yol , 'a') or die ("Dosya açılamadı!");

fwrite($dosya,$adi);
fwrite($dosya,$alt);
fwrite($dosya,$metin);
fwrite($dosya,$alt);
fwrite($dosya,$adres);
fwrite($dosya,$alt);
fwrite($dosya,$aciklama);
fwrite($dosya,$alt);
fwrite($dosya,$alt);


print("Sayın <b>$adi</b> mesajınızdan dolayı teşekkür ederiz <BR><br>
En kısa zamanda size ulaşılacaktır</font>");
fclose($dosya);

echo("<HTML>
	<HEAD>
	<TITLE>PHP'de Formlar</TITLE>
	<meta http-equiv=\"content-type\" content=\"text/html; charset=ISO-8859-9\">
	<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1254\">
	</HEAD>
	<BODY>
	<FORM ACTION="$PHP_SELF" METHOD="GET">
        <p align="center">Adınız Soyadınız: <input type="text" name="adi"><br><br>
        E Posta Adresiniz: <input type="text" name="adres"><br><br>
	Reklamda Yer Alacak Bilgiler:<BR><TEXTAREA NAME="mesaj" ROWS=10 COLS=30 WRAP=virtual></TEXTAREA>
	<BR><BR>
        Ek Açıklama<BR><TEXTAREA NAME="aciklama" ROWS=6 COLS=30 WRAP=virtual></TEXTAREA>
	<br><br>
	       <INPUT TYPE="SUBMIT" VALUE="Gönder"> <INPUT TYPE="RESET" VALUE="Vazgeç"
	</FORM>
	</p>
	</BODY>
	</HTML>
");


?>

Php 5.0 hakkında döküman lazım yardmcı olan arkadaşlara minettar kalrım
ikutluay
Üye
Mesajlar: 2341
Kayıt: 03 Tem 2007 10:13

Mesaj gönderen ikutluay »

özelden attığın mesaja istinaden yazıyorum. forumun zenginleşmesi açısından bu önemli kodda path tanımlamışın. bu path web hosttatada varmı yokmu. bence php\dfff.txt değilde sadece dosya adını yaz.
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
ikutluay
Üye
Mesajlar: 2341
Kayıt: 03 Tem 2007 10:13

Mesaj gönderen ikutluay »

Kodu kısaca inceledim.

1. Get kullanmayın POST tercih edin.

2. GET değişkenleri de post yapın ayrıca o post blokunu POST değeri boş değilse çalışacak şekilde ayarlayın.

3. yukarda dediğim gibi path değerine dikkat edin.

4. eğer get kullanırsanız birileri URL yapınızı söker ve sadece adres satırını değiştirip sayfanızdan alakasız şeyleri kayıt ederler.
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
4hm3t
Üye
Mesajlar: 10
Kayıt: 03 Oca 2008 04:57
Konum: Gaziantep

Mesaj gönderen 4hm3t »

ikutluay yazdı:özelden attığın mesaja istinaden yazıyorum. forumun zenginleşmesi açısından bu önemli kodda path tanımlamışın. bu path web hosttatada varmı yokmu. bence php\dfff.txt değilde sadece dosya adını yaz.
hocam
path kullanmadan direk olarak denedim fakat sonuç aynıydı
düzen için ana dizinde "php" die bi klasör oluşturdum ve .php dosyalarını bunun içine atadımbu yüzden progrmda path kullanıyorum

ama programı ana dizine atıp direk olarak denediğimdede sonuç aynı

post metodu ile ilgili tavsilerini denicem çok saol
Php 5.0 hakkında döküman lazım yardmcı olan arkadaşlara minettar kalrım
Cevapla