Yazılım | Programlama Random Generator Elamanlarını PHP ile TXT'den Çekmek İstiyorum

chocolax

Kıdemli Üye
1 Ocak 2015
3,171
3
Arkadaşlar javascript ile random generatordaki kelimelerin kaynak kodunda gözükmesini istemiyorum o yüzden txt den çekmesini istiyorum. Ama bir türlü beceremedim nasıl yapacağım? Aklıma $dosya = fopen("test.txt","r"); geliyor ama bilgim yeterli olmadığı için devam ettiremiyorum.

Kod:
	<script type="text/javascript">	

		function generator(){
			
			var ad = ["Ahmet", "Osman", "Mehmet", "Mustafa"];
			
			var soyad = ["Yılmaz", "Demir", "Çiftçi", "Yıldırım"]
			
			var randomSayı1 = parseInt(Math.random() * ad.length);
			var randomSayı2 = parseInt(Math.random() * soyad.length);
			var name = ad[randomSayı1] + " " + soyad[randomSayı2];			
			
			if(docu-ment.getElementById("result")){
				docu-ment.getElementById("placeholder").removeChild(docu-ment.getElementById("result"));
			}
			var element = docu-ment.createElement("div");
			element.setAttribute("id", "result");
			element.appendChild(docu-ment.createTextNode(name));
			docu-ment.getElementById("placeholder").appendChild(element);
		}		
	</script>

		<div id="generator" >
			<div id="placeholder"></div>
				<button type="button" onclick="generator()">
					<span>Generate</span>
				</button>
		</div>
 

chocolax

Kıdemli Üye
1 Ocak 2015
3,171
3
PHP: array_rand - Manual

Bunu kullanarak bir arrayden rastgele eleman alabilirsiniz.

PHP: file - Manual

Bununla da dosyayı array olarak okuyabilirsiniz.

Dosya ile yaptım.

Kod:
<?php

$lines = file("test3.txt");
$lines2 = file("test4.txt");

foreach($lines as $line)
foreach($lines2 as $line2)

?>

	<script type="text/javascript">	

		function generator(){
			
			var ad = [<?echo "$line";?>];
			
			var soyad = [<?echo "$line2";?>]
			
			var randomSayı1 = parseInt(Math.random() * ad.length);
			var randomSayı2 = parseInt(Math.random() * soyad.length);
			var name = ad[randomSayı1] + " " + soyad[randomSayı2];			
			
			if(docu-ment.getElementById("result")){
				docu-ment.getElementById("placeholder").removeChild(docu-ment.getElementById("result"));
			}
			var element = docu-ment.createElement("div");
			element.setAttribute("id", "result");
			element.appendChild(docu-ment.createTextNode(name));
			docu-ment.getElementById("placeholder").appendChild(element);
		}		
	</script>

Umarım doğru olanı budur yanlışım var ise düzeltir misiniz? Bir de dosya olmadan nasıl yapılabilir? İlk attığınızı beceremedim.

Edit: Şimdi fark ettim böyle yapınca kaynak kodlarında bir değişiklik olmuyor yine gözüküyor hepsi.
 
Son düzenleme:

Gbmdpof

Kıdemli Üye
23 Eyl 2016
2,001
11
Dosya ile yaptım.

Kod:
<?php

$lines = file("test3.txt");
$lines2 = file("test4.txt");

foreach($lines as $line)
foreach($lines2 as $line2)

?>

	<script type="text/javascript">	

		function generator(){
			
			var ad = [<?echo "$line";?>];
			
			var soyad = [<?echo "$line2";?>]
			
			var randomSayı1 = parseInt(Math.random() * ad.length);
			var randomSayı2 = parseInt(Math.random() * soyad.length);
			var name = ad[randomSayı1] + " " + soyad[randomSayı2];			
			
			if(docu-ment.getElementById("result")){
				docu-ment.getElementById("placeholder").removeChild(docu-ment.getElementById("result"));
			}
			var element = docu-ment.createElement("div");
			element.setAttribute("id", "result");
			element.appendChild(docu-ment.createTextNode(name));
			docu-ment.getElementById("placeholder").appendChild(element);
		}		
	</script>

Umarım doğru olanı budur yanlışım var ise düzeltir misiniz? Bir de dosya olmadan nasıl yapılabilir? İlk attığınızı beceremedim.

Edit: Şimdi fark ettim böyle yapınca kaynak kodlarında bir değişiklik olmuyor yine gözüküyor hepsi.

Evet, echo ile yazdırdığınız şeyler kullanıcıda gözükür.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.