Gönderen Konu: PHP Çekiliş - Kura Scripti  (Okunma sayısı 6360 defa)

HS-Abdullah

  • Administrator
  • Newbie
  • *****
  • İleti: 45
    • Profili Görüntüle
    • E-Posta
PHP Çekiliş - Kura Scripti
« : Mayıs 08, 2011, 10:42:36 ÖÖ »
Merhaba Arkadaşlar,

Başlıkta belirttiğim gibi ilgili script çekiliş vb işlerde kullanılabilir. İçerik:

1) Random PHP
İçerisinde 3 adet özel tanımlı fonksiyon bulunmaktadır.
-temiz_sql();
-filitre();
Bu ikisi görev olarak birleştirilmiş fonksiyonlardır. PHP nin son sürümlerinde mysql_real_escape_string kullanımı için mysql oturumunun başlaması gerekmektedir. Bu sebepten ötürü şayet sayfanızda mysql oturumu yoksa muhtemelen hata alacaksınız. Şayet mysql oturumu yoksa ve hata alıyorsanız

Bulunuz:


function filitre ($x)
{
return 
mysql_real_escape_string(temiz_sql(trim(htmlspecialchars(strip_tags($x)))));
}


Değiştiriniz:


function filitre ($x)
{
return 
temiz_sql(trim(htmlspecialchars(strip_tags($x))));
}


-random();
Asıl çekilişin yapıldığı fonksiyondur. $returnvalues dizisi global olarak tanımlanmıştır. Şayet fonksiyon başka türlü bir scriptte kullanılırsa çekilişte dönen değerler $returnvalues dizisine kayıtlıdır.

2) Exec PHP
Fonksiyonun çalıştırıldığı sayfadır.Post.php de scripti yazarken textarea ismine name[] verdik. Bu sebepten dolayı exec php de random("name"); şeklinde kullanım yaptık.

3) Post PHP
2 Aşamadan oluşmaktadır:
İlk aşamada kaç adet seçenek oluşturulacağı ve sonuçların nasıl kaçlı gruplandırılacağı belirlenmektedir. Misal ,seçenekleriniz sırasıyla x y z t ile ise,  grup değerine 2; seçenek değerine 4 girerseniz:
y x
t z
gibi bir sonuç döndürecektir. 1 girseydiniz alt altta 4 farklı değer dönecekti.

İkinci aşamada ise adetini girdiğiniz seçeneklerin neler oluduğunu tayin edersiniz.

random.php

<?php
/*
Author= HOSTINGSITENIZ.NET NETWORK SERVICE
System= MIXER
$returnvalues gives new values
*/
function temiz_sql($sql)
{
return 
preg_replace(sql_regcase("/(from|select|insert|delete|where|drop table|show tables|#|--|\\\\)/"),"",$sql);
}
function 
filitre ($x)
{
return 
mysql_real_escape_string(temiz_sql(trim(htmlspecialchars(strip_tags($x)))));
}
function 
random ($textboxname)
{
global 
	
$returnvalues;
$sayi=count($_POST[$textboxname]);
$sifir=0;
	
while(
$sifir<$sayi)
	
{
	
$values[$sifir]=filitre($_POST[$textboxname][$sifir]);
	
$sifir++;
	
}
$count=count($values);
$temel=0;
	
while(
$temel<$count){
	
$ncount=count($values);
	
$x=rand();
	
$arrayid=$x%$ncount;
	
$returnvalues[$temel]=$values[$arrayid]; // New Values
	
$values[$arrayid]="";
	
$basic=0;
	
$ncountum=$ncount-1;
	
	
while(
$basic<$ncount)
	
	
{
	
	
	
if(
$values[$basic]!="")
	
	
	
{
	
	
	
$yenidizi=$yenidizi.$values[$basic]."[-HSNET-]";
	
	
	
}
	
	
$basic++;
	
	
}
 
	
$yenidizipreg_replace("@\[-HSNET-\]$@","",$yenidizi);
	
$values=explode("[-HSNET-]",$yenidizi);
	
unset(
$yenidizi);
	
$temel++;
	
}
}
?>



Exec.php

<?php
require_once("random.php");
random("name");
if(!
is_numeric($_POST["grupla"])){die("ACCESS DENIED");}
$grup=trim(htmlspecialchars(strip_tags($_POST["grupla"])));
$sayi=count($returnvalues);
$sayi=ceil($sayi/$grup);
$point=0;
echo 
'<table  border="0" cellspacing="0" cellpadding="0" >';
	
while(
$point<$sayi)
	
{
	
$play=0;
	
$renks=$point%2;
	
if(
$renks==0){$renk="#EEEEEE";}
	
if(
$renks==1){$renk="#FFFFFF";}
echo 
' <tr align="center"  bgcolor="'.$renk.'">';
	
	
while(
$play<$grup)
	
	
{
	
	
$x=$point*$grup;
	
	
$x=$x+$play;
	
    echo 
"<td style=\"padding:15px;\">".$returnvalues[$x]."</td>";
	
	
$play++;
	
	
}
	
	
echo 
"</tr>";
	
$point++;
	
}
echo
'</table>';

?>


Post.php

<?php
echo'<meta http-equiv="Content-Type" content="text/html; charset=utf-8">';

$adethtmlspecialchars(strip_tags($_POST["adet"]));
if(!
is_numeric($_POST["adet"])){unset($_POST["adet"]);}
if(
$adet!=""){$screen=2;} if($adet==""){$screen=1;}

if(
$screen==1){?>
<form id="form1" name="form1" method="post" action="post.php">
  <p>Adet
    <input name="adet" type="text" id="adet" size="10" />
</p>
  <p>Grup
    <input name="grupla" type="text" id="grupla" size="10" />
  </p>
  <p>    
    <input type="submit" name="button2" id="button2" value="Oluştur" />
      </p>
</form>
<?php ?>
<?php 
if($screen==2){
echo
'<form id="form1" name="form1" method="post" action="exec.php">';
  
$sayi=0;
  while(
$sayi<$adet){
 echo
' <label>
  <input type="text" name="name[]" id="name[]" />
  </label>
  <p>
'
;
$sayi++;
}
echo
'<label>
<input type="hidden" name="grupla" id="button" value="'
.$_POST["grupla"].'" />
  <input type="submit" name="button" id="button" value="Gönder" />
  </label></form>'
;} ?>



Not 1) Kaynak kodları verilen dosyalar hazır halde ektedir.
Not 2) Kaynak gösterilerek alıntı yapılabilir.


Saygılarımla...
Abdullah ÇINAR
« Son Düzenleme: Nisan 24, 2012, 04:03:49 ÖS Gönderen: HS-Abdullah »