Преглед на урок

Книга за гости

Книга за гости




В този урок ще се научите как да направите книга за гости базирана в/у PHP и Flash.
Направете нов документ. Направете динамична текстова кутийка и я наименувайте txtmain (не забравяйте да включите HTML опцията). Сега сложете динамични текстови полета чрез които ще показваме коментарите. Направете нов слой и го кръстете action. Сложете следния код в него:

Код
lowlimit = 0; 
highlimit = 10; 
loadVariablesNum ("guestbook.php?lowlimit="+lowlimit+"&highlimit="+highlimit, 0); 
stop();
* lowlimit и highlimit са променливи, които се изпращат в PHP скрипта
Сега направете 2 бутона с който да се регулира scrollera

Код
// За нагоре
on (release) { 
   txtmain.scroll--; 
} 

// За надолу
on (release) { 
   txtmain.scroll++; 
}


Сега направете 2 бутона за предните 10 и следващите 10 коментари. Добавете кода в Action
Кода за следващите коментари

Код
on (release) {
   lowlimit = Number(lowlimit)+Number(10); 
   highlimit = Number(highlimit)+Number(10); 
   txtmain = "Processing Entries from "+lowlimit+" to "+highlimit+" Please wait ::: "; 
loadVariablesNum ("guestbook.php?lowlimit="+lowlimit+"&highlimit="+highlimit, 0); 
}

Кода за предните коментари

Код
on (release) { 
   if (lowlimit == "0") { 
   txtmain = "Nothing before Zero"; 
   }else{ 
         lowlimit = Number(lowlimit) - Number(10); 
   highlimit = Number(highlimit) - Number(10); 
   txtmain = "Processing Entries "+lowlimit+" to "+highlimit+" Please wait ... "; 
   loadVariablesNum ("guestbook.php?lowlimit="+lowlimit+"&highlimit="+highlimit, 0); 
   } 
} 

Сега направете 3 динамични полета: Общо мнения (totalentries), Low Limit (txtll) и High Limit (txthl).

Направете нов movie instance. Сложете 4 динамични полета: Име (textname), E-mail (txtemai), Сайт (txtwebsite) и Коментар (txtcomments). Под тях добавете 2 бутона: за пускане на мнението (Submit) и за изчиставане на полетата (Reset)
Сега кода за пусканете на мнението (Submit)

Код
on (release) { 
   if (txtname eq "") { 
       _root.txtmessage = "Name information missing."; 
   } else if (txtemail eq "") { 
       _root.txtmessage = "Email missing."; 
   } else if (txtcomments eq "") { 
       _root.txtmessage = "Comments missing."; 
   } else if (txtwebsite eq "") { 
       _root.txtmessage = "Enter the URL to your website"; 
   } else { 
       submit= "Y";  // променливата се използва в PHP скрипта за да определи дали коментара е пуснат или не. 
       highlimit = 10; 
       lowlimit = 0; 
       _root.txtmain = "Posting ..."; 
       loadVariablesNum ("guestbook.php", 0, "POST"); // изпраща променлива в PHP скрипта
       _root.txtmessage = "Comments posted"; 
       txtname1=txtname; 
       gotoAndStop (2); 
   } 
}

Ето кода и за изчистване на полетата (Reset)

Код
on (release) { 
   txtname = ""; 
   txtemail = ""; 
   txtWebsite = "http://"; 
   txtcomments = ""; 
}

Ето че дойде и времето за PHP скрипта

Код

<? //Ако мнението е пуснато 

If (isset($submit)){ 
   if ($submit=="Y"){           
      $datestamp =(date ("dS F Y ( h:i:s A )",time()));  //текуща дата 
      $fpn=@fopen("guestbook.txt","a+"); //отваря guestbook.txt да запише коментарите 
      @flock ($fpn,2); 
      $rec = "Име: <b>$txtname</b><br>Email: <b><u><a href=\"mailto:$txtemail\">$txtemail</a></u></b><br>Сайт:    <b><u><a href=\"$txtwebsite\" target=\"_blank\">$txtwebsite</a></u></b><br>Коментар: <b>$txtcomments</b><br><i>Дата: $datestamp" . "\n"; 
       $fw=fwrite($fpn,$rec); 
       @flock($fpn,3); 
       @fclose($fpn); 
   } 
} 

//Прочита съдържанието на guestbook.txt

//Сортира всички мнения 
$fp=@fopen("guestbook.txt","r"); 
@flock ($fp,2); 
$garr=array(); 
while ($line=@fgets($fp,1024)){ 
   array_push($garr,$line); 
} 

$totalent=count($garr)-1; 
if ($totalent<0){ 
$totalent=0; 
} 
if($highlimit>$totalent){ 
   $highlimit=$totalent; 
} 

//Тука се изпращат стойностите в PHP скрипта 
print "&txtll=$lowlimit&txthl=$highlimit&totalentries=$totalent&txtmain=" ; 
 

if (count($garr)==0){ 
   print "<br><br><b>Nothing to display</b>"; 
   exit(); 
} 
$ar=array_reverse($garr);
$garr=array(); 
for($i=$lowlimit;$i<=$highlimit;$i++){ //филтрира записините м/у hightlimit и lowlimit 

if (!$ar[$i]) { 
   print "<br><br><b>Nothing Below This</b>"; 
   exit; 
} 
print $ar[$i]; 
print "<br><br>"; 
} 
@flock($fp,3); 
@fclose($fp); 
?>

* Не забравяйте да направите текстов файл: guestbook.txt

Остана само да направите дизайна на вашата книга

Източник: www.DeveloperFusion.co.uk

Ако урокът ви допада, споделете го в Twitter и Facebook или го запазете в Delicious.




Урокът е добавен от: svilka90

Добави коментар

Трябва да сте регистиран потребител за може да оставяте коментари! Направете своята безплатна регистрация още сега.