Полезни PHP кодове за вашите web страници

--- Създаване на MySQL база данни от PHP

<?php
$result = mysql_create_db("mydb");
if ($result == false)
echo ("failure to create database");
?>



--- Цикъл While

пример с цикъла while в PHP

<?php
$i=1;
while($i<=5)
{
echo "$i<br>";
$i++;
}
?>



--- Do While цикъл

цикъл Do-While пример в PHP

<?php
$i=0;
do
{
$i++;
echo "$i<br>";
}
while ($i<5);
?>



--- цикъл for

синтаксис на цикъла for в PHP

<?php
for ($i=0; $i<=5; $i++)
{
echo "$i<br>";
}
?>





--- израза if else

пример за твърдението if-else

<?php
$i = 6;
if ($i < 6)
{
echo "По малко от 6";
}
else
{
echo "По-голямо от 6";
}
?>






--- Slashdot новини

Показва последните новини от Slashdot

<?php
$xmlfile = fopen("http://slashdot.org/slashdot.rdf", "r");
if(!$xmlfile)die("cannot open the xml file");
$readfile = fread($xmlfile ,40000);
$searchfile = eregi("<item>(.*)</item>", $readfile ,$arrayreg);
$filechunks = explode("<item>", $arrayreg[0]);
$count = count($filechunks);
echo "<table border='1'>";
echo "<th colspan='3'>latest news</th>";
for($i=1 ; $i<=$count-1 ;$i++)
{
ereg("<title>(.*)</title>",$filechunks[$i], $title);
ereg("<link>(.*)</link>",$filechunks[$i], $links);
ereg("<description>(.*)</description",$filechunks[$i],$desc);
echo "<tr><td>";
echo $title[1];
echo "</td><td>";
echo "<a href ='$links[1]'>$links[1]</a>";
echo "</td><td>";
echo $desc[1];
echo "</td></tr>";
}
echo "</table>";
?>




--- Wired новини

Последните новини от Wired на Вашия сайт

<?php
$xmlfile = fopen("http://www.wired.com/news_drop/netcenter/netcenter.rdf", "r");
if(!$xmlfile)die("cannot open the xml file");
$readfile = fread($xmlfile ,40000);
$searchfile = eregi("<item>(.*)</item>", $readfile ,$arrayreg);
$filechunks = explode("<item>", $arrayreg[0]);
$count = count($filechunks);
echo "<table border='1'>";
echo "<th colspan='3'>latest news</th>";
for($i=1 ; $i<=$count-1 ;$i++)
{
ereg("<title>(.*)</title>",$filechunks[$i], $title);
ereg("<link>(.*)</link>",$filechunks[$i], $links);
ereg("<description>(.*)</description",$filechunks[$i],$desc);
echo "<tr><td>";
echo $title[1];
echo "</td><td>";
echo "<a href ='$links[1]'>$links[1]</a>";
echo "</td><td>";
echo $desc[1];
echo "</td></tr>";
}
echo "</table>";
?>





--- The Register новини

Показва последните новини от the register на Вашия сайт

<?php
$xmlfile = fopen("http://www.theregister.co.uk/tonys/slashdot.rdf", "r");
if(!$xmlfile)die("cannot open the xml file");
$readfile = fread($xmlfile ,40000);
$searchfile = eregi("<item>(.*)</item>", $readfile ,$arrayreg);
$filechunks = explode("<item>", $arrayreg[0]);
$count = count($filechunks);
echo "<table border='1'>";
echo "<th colspan='3'>latest news</th>";
for($i=1 ; $i<=$count-1 ;$i++)
{
ereg("<title>(.*)</title>",$filechunks[$i], $title);
ereg("<link>(.*)</link>",$filechunks[$i], $links);
ereg("<description>(.*)</description",$filechunks[$i],$desc);
echo "<tr><td>";
echo $title[1];
echo "</td><td>";
echo "<a href ='$links[1]'>$links[1]</a>";
echo "</td><td>";
echo $desc[1];
echo "</td></tr>";
}
echo "</table>";
?>




--- mozillaZine новини

Последни новини от mozillaZine

<?php
$xmlfile = fopen("http://www.mozillazine.org/contents.rdf", "r");
if(!$xmlfile)die("cannot open the xml file");
$readfile = fread($xmlfile ,40000);
$searchfile = eregi("<item>(.*)</item>", $readfile ,$arrayreg);
$filechunks = explode("<item>", $arrayreg[0]);
$count = count($filechunks);
echo "<table border='1'>";
echo "<th colspan='3'>latest news</th>";
for($i=1 ; $i<=$count-1 ;$i++)
{
ereg("<title>(.*)</title>",$filechunks[$i], $title);
ereg("<link>(.*)</link>",$filechunks[$i], $links);
ereg("<description>(.*)</description",$filechunks[$i],$desc);
echo "<tr><td>";
echo $title[1];
echo "</td><td>";
echo "<a href ='$links[1]'>$links[1]</a>";
echo "</td><td>";
echo $desc[1];
echo "</td></tr>";
}
echo "</table>";
?>





--- Yahoo новини

Последни Yahoo новини

<?php
$xmlfile = fopen("http://rss.news.yahoo.com/rss/oddlyenough", "r");
if(!$xmlfile)die("cannot open the xml file");
$readfile = fread($xmlfile ,40000);
$searchfile = eregi("<item>(.*)</item>", $readfile ,$arrayreg);
$filechunks = explode("<item>", $arrayreg[0]);
$count = count($filechunks);
echo "<table border='1'>";
echo "<th colspan='3'>latest news</th>";
for($i=1 ; $i<=$count-1 ;$i++)
{
ereg("<title>(.*)</title>",$filechunks[$i], $title);
ereg("<link>(.*)</link>",$filechunks[$i], $links);
ereg("<description>(.*)</description",$filechunks[$i],$desc);
echo "<tr><td>";
echo $title[1];
echo "</td><td>";
echo "<a href ='$links[1]'>$links[1]</a>";
echo "</td><td>";
echo $desc[1];
echo "</td></tr>";
}
echo "</table>";
?>



--- Browser версия

Показва browser версията

<?php
echo $HTTP_USER_AGENT;
?>



--- IP адрес

Взима потребителския IP адрес

<?php
echo $REMOTE_ADDR;
?>



--- Информация за процесора

Показва на потребителя информация за процесора

<?php
echo $PROCESSOR_ARCHITECTURE;
echo "<br>";
echo $PROCESSOR_IDENTIFIER;
echo "<br>";
echo $PROCESSOR_LEVEL;
echo "<br";
echo $PROCESSOR_REVISION;
?>





--- Date/Time примери

Някои date и time примери

<?php
$theDate = time();
print date('d-m-y',$theDate);
print ("<br>");
print date('d-m-Y',$theDate);
print ("<br>");
print date('D-M-Y',$theDate);
print ("<br>");
print date('G-i-s',$theDate);
?>



--- Поздрав зависещ от часа през деня

Поздрав според часа в който активирате кода

<?php
$theDate = date("H");
if($theDate < 12)
echo "Good morning to you";
else if($theDate < 18)
echo "Good afternoon to you";
else
echo "Good evening to you";
?>





--- Counter пример

Изисква файл counter1.dat в същата папка на скрипта. CHMOD файла на counter на 755

<?php
//simple counter пример v1.0
//отваря counter файла в read only mode
$counterfile = "counter1.dat";
if(!($fp = fopen($counterfile,"r"))) die ("cannot open counter file");
//чете стойността съхранена във файла
$thecount = (int) fread($fp, 20);
//затваря файла
fclose($fp);
//увеличаване на thecount
$thecount++;
//показване на thecount
echo "visitor no : $thecount";
//отваряне на файла отново във write mode и съхраняване
// the new count
$fp = fopen($counterfile, "w");
fwrite($fp , $thecount);
//затваря файла
fclose($fp);
?>





--- US популация

Този скрипт получава информация от US goverment census page и показва текущата US популация на страницата

<?
$url = "http://www.census.gov/cgi-bin/popclock/index.html";
$fp = fopen($url, "r");
$search = fread($fp, 32000);
fclose($fp);
$search = ereg("<CENTER><H2> (.*)</H2>", $search, $content);
echo "<h2>$content[1]</h2>";
?>



--- World популация

Показва world популацията

<?php
//ще покаже worlds популация
//това е url-то с информацията
$url = "http://www.census.gov/cgi-bin/ipc/popclockw/index.html";
//отваря този файл за четене
$fp = fopen($url, "r");
$search = fread($fp, 50000);
fclose($fp);
//търси tags, които заграждат figure
$search = ereg("<p><h1>(.*)</h1>", $search, $content);
echo "<H1>$content[1]</H1>";
?>





--- Последен достъп до страницата

Показва датата, когато последно е посетена страницата

<?php
//показва time / date на последен достъп до страницата
echo "Последно видяна на: " . date( "D m/d/Y h:i:s a", fileatime( $PATH_TRANSLATED ) );
?>



--- Показва датата на последната модификация на page

Кога последно е модифицирана страницата

<?php
//показва time/date на последната page модификация
echo "Последна модификация на: " . date("D m/d/Y h:i:s", filemtime( $PATH_TRANSLATED ));
?>





--- Пример със случайни числа

Показва как да се генерират случайни числа

<?php
//извежда случайни числа
srand((double)microtime()*1000000);
//число между 1 и 100
$random_number1 = rand(1,100);
echo ("$random_number1<br>");
//между 1 и 50
$random_number2 = rand(1,50);
echo ("$random_number2<br>");
//накрая между 55 и 95
$random_number3 = rand(55,95);
echo ("$random_number3");
?>





--- линкове от A до Z

Показва линкове от A до Z на Вашия сайт

<?php
for ($i = 65 ; $i < 91 ; $i++)
{
printf ('<a href = "%s?mylink=%s">%s</a> ', $PHP_SELF, chr($i), chr($i));
}
?>





--- Получаване на stock котировки

Как да покажем stock котировките на Вашия сайт използувайки Yahoo котировките

<?php
Class yahoo
{
function get_stock_quote($symbol)
{
$url = sprintf("http://finance.yahoo.com/d/quotes.csv?s=%s&f=sl1d1t1c1ohgv" ,$symbol);
$fp = fopen($url, "r");
if(!fp)
{
echo "error : cannot recieve stock quote information";
}
else
{
$array = fgetcsv($fp , 4096 , ', ');
fclose($fp);
$this->symbol = $array[0];
$this->last = $array[1];
$this->date = $array[2];
$this->time = $array[3];
$this->change = $array[4];
$this->open = $array[5];
$this->high = $array[6];
$this->low = $array[7];
$this->volume = $array[8];
}
}
}
$quote = new yahoo;
$quote->get_stock_quote("MSFT");
echo ("<B>$quote->symbol</B><br>");
echo ("<B>$quote->time</B><br>");
echo ("<B>$quote->date</B><br>");
echo ("<B>$quote->last</B><br>");
echo ("<B>$quote->change</B><br>");
echo ("<B>$quote->high</B><br>");
echo ("<B>$quote->low</B><br>");

?>




--- Случаен URLs

Показва случаен линк на Вашия сайт

<?php
$urls = array("http://asp.programmershelp.co.uk" ,
"http://vwww.programmershelp.co.uk" ,
"http://javascript.programmershelp.co.uk" );
$titles = array("ASP site" ,
"VBScript site" ,
"Javascript site");
//генерира случайно число
srand(time());
$random = (rand()%3);
//показва линка
echo ("<a href = "$urls[$random]">$titles[$random]</a>");
?>



--- Пример за случайна image

Този пример използува масив за съхранение на images и след това произвежда случайно число и показва image на монитора

<?php
//масив от 4 images в същата директория на скрипта
$images = array("a1.gif","a2.gif","a3.gif","a4.gif");
//генерира случайно число
srand((double)microtime()*1000000);
$randomno = (rand()%4);
//показва image
echo ("<img src="$images[$randomno]">");
?>





--- Показва случаен book линк от Amazon

Показва случаен book link от Amazon

<?php
// URL на всяка книга
$urlama = array("http://www.amazon.com/exec/obidos/ASIN/1861002963/basicvisualbasic",
"http://www.amazon.com/exec/obidos/ASIN/1565927699/basicvisualbasic",
"http://www.amazon.com/exec/obidos/ASIN/076152729X/basicvisualbasic",
"http://www.amazon.com/exec/obidos/ASIN/0672318040/basicvisualbasic");
//description of each book
$descama = array("Professional Php Programming (Programmer...",
"PHP Pocket Reference",
"Php Essentials",
"Teach Yourself PHP4 in 24 Hours...");
//генерира случайно число
srand((double)microtime() * 1000000);
$randno = (rand()%4);
//показва случаен URL
echo ("<a href = $urlama[$randno]>$descama[$randno]</a>");
?>





--- Browser детекция

Примера показва проста детекция на browser-а

<?php
$msie = eregi("MSIE" , $HTTP_USER_AGENT);
//гледа за MSIE във HTTP_USER_AGENT
if ($msie == true)
{
echo ("Използувате Internet explorer");
//header("location: internetexplorerpage.htm");
exit;
}
//сега ще гледаме за mozilla и разбира се, ако не е internet explorer
//ще предположиме, че е netscape navigator
$ns = eregi("mozilla" , $HTTP_USER_AGENT);
if ($ns == true)
{
echo ("Използувате Netscape");
//header("location: netscapepage.htm");
exit;
}
//а това е за всички останали browsers
else
{
echo ("Вие не използувате нито Netscape, нито Internet explorer");
//header("location: otherpage.htm");
exit;
}
?>





--- Показва Access database

Показва Access database, използувайки PHP и ODBC

<?php
$odbcdsn = "sampledb";
$odbcuser = "";
$odbcpass = "";
$sqlquery = "SELECT * FROM tblsample";
if(!($odbcdb = odbc_connect($odbcdsn , $odbcuser , $odbcpass)))
die("cant open the dsn");
if(!($odbcrs = odbc_do($odbcdb , $sqlquery)))
die("cannot execute sql query");
odbc_result_all($odbcrs);
?>





--- Показва MySQL таблици

Показва всички таблици в MySQL база данни ( въведете името на базата данни )

<?php
$db = mysql_connect("localhost" , "username" , "password");
mysql_select_db("mysql" , $db);
$result = mysql_query("SHOW tables", $db);
while($row = mysql_fetch_row($result))
{
print("$row[0]<br>");
}
?>





--- Четно или нечетно

Дали числото е четно или нечетно

<?php
/*
Тази функция приема цяло число ($intnumber)
и след това показва съобчение, зависещо от това дали числото
е четно или нечетно
*/
function OddOrEven($intNumber)
{
if ($intNumber % 2 == 0 )
{
//числото е четно
echo "Your number is even<br>";
}
else
{
//числото е нечетно
echo "Your number is odd<br>";
}
}
//тест на функцията с 2 стойности: 40 и 3
OddOrEven(40);
OddOrEven(3);
?>





--- Градуси / Радиани - превръщане

Degrees / Radians превръщане



<?php
//от degrees на radians функция
function DegToRad($degrees)
{
return $degrees * 3.14 / 180;
}
//превръщане от radians на degrees
function RadToDeg($radians)
{
return $radians * 180 / 3.14;
}
?>

код за тестване на функциите

<?php
//testing our functions with some values
echo DegToRad(90);
echo "<br>";
echo RadToDeg(0.707);
?>





--- Показва meta таговете

Използува се get_meta_tags функцията за показване на meta таговете на дадена страница , ако ги има

<?php
$searchmeta = get_meta_tags("index.htm");
echo ($searchmeta["description"]);
echo ("<br>");
echo ($searchmeta["keywords"]);
?>





-- Показва metatags на някой друг

Показва meta тагове на друг сайт

<?php
$searchmeta1 = get_meta_tags("http://asp.programmershelp.co.uk/index.php");
echo ($searchmeta1["description"]);
echo ("<br>");
echo ($searchmeta1["keywords"]);
?>





--- Stock ticker lookup

Lookup the symbol for a company

<?php
//това е company, която искате да lookup
$company = "ntl";
//това е url от yahoo + компанията
$url = "http://quote.yahoo.com/l?m=&s=" . $company . "&t=";
//отваря url и съхранява във $fp
$fp = fopen($url , "r");
//чете 20000 bytes от файла
$readfile = fread($fp , 20000);
//търси HTML и съхранява в $content
$readfile = ereg("<TABLE border=0 cellPadding=2 cellSpacing=0 width=100%>(.*)<small>Add</small>" , $readfile, $content);
//показва резултатите в таблица
echo "<table width = '100%'>";
echo "$content[1]";
echo "</table>";
//затваряне на файловия handle
fclose($fp);
?>





--- Смята думите в изречение

пресмята думите в изречение

<?php
$strText = "This is a test";
$wordcount = count(explode(" ",$strText));
echo "There are $wordcount words in $strText";
?>





--- Проверява броя на characters

Проверява броя characters във диапазон

<?php
//проверява броя characters във string функция
Function CheckNoChars($strText)
{
//проверява между 6 и 12 characters
if (eregi("^.{6,12}$" , $strText))
return true;
else
return false;
}
?>
<?php
//тестване на функцията
$str1 = "mypasswordistoolong";
if (CheckNoChars($str1))
//ако всичко е OK показва това съобщение
echo "има коректен брой characters";
//ако не е OK показва
else
echo "некоректен брой characters";
?>





--- IP адрес към host name

получава Internet host name съответстващо на даден IP адрес

<?php
$ip = gethostbyaddr($REMOTE_ADDR);
echo $ip;
?>





--- Domain name към IP адрес

получава IP адреса съответствуващ на зададен Internet host name

<?php
$ipaddress = gethostbyname("www.microsoft.com");
echo "$ipaddress";
?>





--- Създава таблица в MySQL база данни

Създава таблица в MySQL база данни

<?php
//connect към Вашия MySQL server използувайки Вашите servername , username
//и password
$conn = mysql_connect("localhost" , "username" , "password");
//ако не можете да се connect-нете показва error message и exit
if ($conn == false)
{
echo mysql_errno().": ".mysql_error()."<BR>";
exit;
}
//създава таблица с име contact , със съдържание на 2 полета .
//fullname за съхранение на имена и email за съхранение на email адреси
$query = "create table contact" .
"(fullname varchar(255), email varchar(255))";
//съхранява това в $result променливата
$result = mysql_db_query ("mydb", $query);
//ако е успешно показва съобщение
if ($result)
echo "Table 'mydb' was successfully created!";
//ако е неуспешно показва error message
else
echo mysql_errno().": ".mysql_error()."<BR>";
mysql_close ();
?>





--- Проверява дали съществува image

Проверява дали image съществува, използувайки GD

<?php
//проверка дали image съществува
if($img = @GetImageSize("testimage.gif"))
{
echo "image exists";
}
else
{
echo "image does not exist";
}
?>





--- Показва дименсиите на image

Показва дименсиите на image, използувайки GD library

<?php
//това е image за проверка(задайте Ваша)
if($img = @GetImageSize("testimage.gif"))
{
//ако image съществува, показва следната информация
echo "image exists , here is some info<br>";
//показва width в пиксели
echo "width = $img[0]<br>";
//показва height в пиксели
echo "height = $img[1]<br>";
}
else
{
//ако не открие image, извежда
echo"image does not exist";
}
?>





--- Показва типа на image

типа на image

<?php
if($img = @GetImageSize("ihcomputing1.gif"))
{
switch ($img[2])
{
case 1 :
echo "image is a gif";
break;
case 2 :
echo "image is a jpeg";
break;
case 3 :
echo "image type is PNG";
break;
case 4 :
echo "image type is SWF";
break;
case 5 :
echo "image type is PSD";
break;
case 6 :
echo "image type is BMP";
break;
}
}
else
{
echo "image does not exist";
}
?>





--- Получава дължината на string

Примера показва, как да получите дължината на низ (string) , с употребата на функция strlen()

<?php
//показва дължината на string(s)
$string1 = "beginners php";
$string2 = "myscripting";
//съхраняване на дължините на strings в променливи
$length1 = strlen($string1);
$length2 = strlen($string2);
//Показване на дължините на strings
echo "String1 has $length1 characters";
echo "String2 has $length2 characters";
?>





--- Използуване на trim, за да се избавим от whitespace

Показва как да използуваме trim функцията, за да свалиме white spaces от всяка страна на string-а

<?php
//реже white space от string
//нашите два strings
$string1 = " spaces before";
$string2 = " spaces before and after ";
//сваля whitespace
$trimmed_string1 = trim($string1);
$trimmed_string2 = trim($string2);
//показва текста
echo $trimmed_string1;
echo "<br>";
echo $trimmed_string2;
?>



--- File size функция

Примера показва, как да форматираме файл и да представиме в по-добър вид размера му

<?php
function format_size ($file)
{
//открива размера на файла
$get_file_size = filesize($file);
//ако размера има между 7 и 9 characters, тогава в Mb
if (strlen($get_file_size) <= 9 && strlen($get_file_size) >= 7)
{
$get_file_size = number_format($get_file_size / 1048576,1);
return "$get_file_size MB";
}
//10 characters или повече означават Gb
elseif (strlen($get_file_size) >= 10)
{
$get_file_size = number_format($get_file_size / 1073741824,1);
return "$get_file_size GB";
}
//всичко останало в kilobytes
else
{
$get_file_size = number_format($get_file_size / 1024,1);
return "$get_file_size KB";
}
}
?>
<?php

echo format_size("index.htm");
echo "<br>";
echo format_size("monthimages.zip");
echo "<br>";
echo format_size("sampledb.mdb");
?>





--- Браузване в директория

Показва всички файлове в директорията на скрипта

<?php
//отваря текущата директория
$directory = opendir('.');
while ($file = readdir($directory))
{
$filenames[] = $file;
}
foreach ($filenames as $file)
{
echo "$file<br>";
}
?>





--- Viewer на файловете в директорията (подобрена версия)

Това е следваща стъпка на файл viewer , позволяващ при кликване на файловете, да ги видите

<table>
<tr><th>file viewer</th></tr>
<?php
$directory = opendir('./images');
while ($files = readdir($directory))
{
$file_array[] = $files;
}
foreach ($file_array as $files)
{
echo "<tr><td>";
if($files == ".." || $files == ".")
{
continue;
}
echo "<a href="$files" target = "_blank">$files</a><br>";
echo "</tr>";
}
?>
</table>


Урока е изготвен от www.transcode.org

/ Трябва да сте регистриран за да напишете коментар /