Лесен и и функционален GSM Site
Първоначално да кажа едно "здрасти !" :)
В този урок ще представя как можем да си направим много прост, но и функционален gsm site.Не се използват database, не се променя нищо.Може направо copy->paste
И да започване.
index.php

<html>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<center>
<a href=add.php>Добави нов GSM</a> <a href=upload.php>Качи снимка на GSM</a><p>
</center>
<div align="left">
<form action="search.php" method="post"> //
<input type="text" name="searched"> // това е формата затърсене
<input type="submit" value="search"> //
</form>
<center>
GSM апарати:<br>
</html>
<?
include "indexed.php"; //чрез indexed.php изкарваме добавените GSMs
?>
</center>

add.php

<html>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
<center>
<form method="POST" action="added.php">
Марка: <input type="text" name="gsm"><p>
Модел: <input type="text" name="model"><p>
Година: <input type="text" name="god"><p>
Памет: <input type="text" name="memory"><p>
Поддръжа MP3: <select name="mp3">
<option value="<font color=green><b>Да</b></font>">Да</option>
<option value="<font color=red><b>Не</b></font>">Не</option>
</select>
<p>
Радио: <select name="rad">
<option value="<font color=green><b>Да</b></font>">Да</option>
<option value="<font color=red><b>Не</b></font>">Не</option>
</select>
<p>
Батерия: <input type="text" name="bat"><p>
Тегло: <input type="text" name="teglo"><p>
Камера: <select name="cam">
<option value="<font color=green><b>Да</b></font>">Да</option>
<option value="<font color=red><b>Не</b></font>">Не</option>
</select>
<p>
Цветове: <input type="text" name="colors"><p>
Резолюция: <input type="text" name="resolution"><p>
Тип дисплей: <input type="text" name="disp"><p>
InfraRed Port: <select name="irp">
<option value="<font color=green><b>Да</b></font>">Да</option>
<option value="<font color=red><b>Не</b></font>">Не</option>
</select>
<p>
Bluetooth: <select name="blue">
<option value="<font color=green><b>Да</b></font>">Да</option>
<option value="<font color=red><b>Не</b></font>">Не</option>
</select>
<p>
Xhtml: <select name="xhtml">
<option value="<font color=green><b>Да</b></font>">Да</option>
<option value="<font color=red><b>Не</b></font>">Не</option>
</select>
<p>
Поддържа Java: <select name="js">
<option value="<font color=green><b>Да</b></font>">Да</option>
<option value="<font color=red><b>Не</b></font>">Не</option>
</select>
<p>
Получаване и изпращане на mails: <select name="mails">
<option value="<font color=green><b>Да</b></font>">Да</option>
<option value="<font color=red><b>Не</b></font>">Не</option>
</select>
<p>
Снимка: <input type="text" name="img"><p>
<input type="submit" value="Add" name="send">
</form>

added.php

<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
</head>
<center>
<?php
$ip = getenv("REMOTE_ADDR"); //вземаме ip на добавящия
$mail = $_POST['mails']; // ето ги постовете, които записваме
$js = $_POST['js'];
$xhtml = $_POST['xhtml'];
$blue = $_POST['blue'];
$god = $_POST['god'];
$irp = $_POST['irp'];
$rad = $_POST['rad'];
$cam = $_POST['cam'];
$gsm = $_POST['gsm'];
$disp = $_POST['disp'];
$res = $_POST['resolution'];
$model = $_POST['model'];
$Memory = $_POST['memory'];
$MP3 = $_POST['mp3'];
$bat = $_POST['bat'];
$teglo = $_POST['teglo'];
$colors = $_POST['colors'];
$img = $_POST['img'];
$filename = "$gsm$model.html";
$directory = "./gsms/";
$noext = current(explode(".",$filename));
if(file_exists($directory.$filename)){ // проверяваме, дали някой не е добавил преди нас същия gsm
echo "Gsm <b>$noext</b> е бил добавен от някой друг, преди вас. <br><a href=\"add.php\">НАЗАД</a>";
exit();
}
$file = "./gsms/$gsm$model.html"; //записваме gsm под формата на html file
$handle = fopen($file, 'a') or die("Не мога да отворя файла");
$data = "<center><b>GSM - $gsm $model<br>Година на производство - $god<br>Памет - $Memory<br>Mp3 - $MP3<br>Радио - $rad<br>Тип батерия - $bat<br>Тегло - $teglo<br>Камера - $cam<br>Цветове - $colors<br>Резолюция - $res<br>Дисплей - $disp<br>InfraRed Port - $irp<br>Bluetooth - $blue<br>Xhtml - $xhtml<br>Java - $js<br>Изпращане и получаване на mails - $mail<p><img src=$img><p>Gsm бе добавен от Ip Address $ip";
fwrite($handle, $data);
fclose($handle);
echo "Gsm бе добавен - <a href=./gsms/$gsm$model.html>$gsm$model</a> !";
?>

ето урока с тази търсачка - http://web-tourist.net/login/login/view.php?st=650 .В случая е леко преработена.
search.php

<html>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Search</title>
</head>
<center>
<?php
$flag=0;
$dir="gsms/";
if(isset($_POST['searched'])) {
foreach(glob($dir."*") as $file) {
if(@eregi($_POST['searched'], str_replace($dir, "", $file))) {
$noext = current(explode(".",$file)); //понеже gsm се записват като .html file, чрез тази функция изкарваме само името на file, без разширението
echo("<a href='".$file."' target=_blank>".str_replace($dir, "", $noext)."</a><br />\n");
$flag+=1;
}
}
if($flag==false) {
echo("Няма намерени файлове.");
}
}
?>
</center>
</body>
</html>

indexed.php
Урок - http://web-tourist.net/login/login/view.php?st=1711

<?php
$dir = "./gsms/";
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
if ($file != 'Thumbs.db' && $file != 'banner.jpg' && $file != '..'){
$noext = current(explode(".",$file)); // като в търсачката - за да не се изкарва разширението .html
echo "<a href=./gsms/$file>$noext</a> <br />";
}
}
closedir($dh);
}
}
?>

upload.php
урок - http://web-tourist.net/login/login/view.php?st=1898

<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251" />
</head>
<?php
$site_link = "Link kam site"; //Лйнк към сайта ви, където се намира ъплоад формата (отзад не слагайте /)
$upload_dir = "upload/"; //Може да се смени с друга папка , която вие си пожелаете
$size_bytes = 10485760; //Големината на файла в bytes
$extlimit = "yes"; //Да има лимит или не (yes/no)
$limitedext = array(".jpg",".gif",".png"); //Разрешени файлове за качване
//Далй папката в която ще се качват файловете съществува или не
if (!is_dir("$upload_dir")) {
die ("Грешка: Папката <b>($upload_dir)</b> не съществува");
}

if(isset($_POST['uploadform'])){
// Когато полето на формата е попалнено тогава ще се качват нещата
//Започване на ъплоад формата.

$file_tmp = $_FILES['filetoupload']['tmp_name'];
$file_name = $_FILES['filetoupload']['name'];
//Взимане на размера на файла
$file_size = $_FILES['filetoupload']['size'];

//Показване когато не е избран файл
if (!is_uploaded_file($file_tmp)){
echo "Грешка : Моля изберете файл за качване!. <br>»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>";
exit(); //Излиза от това и не прави нищо друго.
}


//Проверява дали големината на файла съвпада с допустимата
if ($file_size > $size_bytes){
echo "Грешка : Файла е твърде голям. Той трябва да бъде под <b>". $size_bytes / 1024 / 1024 ."</b> MB. <br>»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>";
exit();
}
//Далй файла е от допустимите
$ext = strrchr($file_name,'.');
if (($extlimit == "yes") && (!in_array(strtolower($ext),$limitedext))) {
echo("Грешка : Този тип файл не е позволен за качване. ");
exit();
}


// Далй има такъв файл
if(file_exists($upload_dir.$file_name)){
echo "Името на файла <b>$file_name</b> вече е заето. <br>»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>";
exit();
}
$snimkata = $site_link."/".$upload_dir."".$file_name;
//На мястото на интервала (space) се слага "_".
$file_name = str_replace(' ', '_', $file_name);
//Местене на файла в папката която сме посочили отгоре на скрипта
//move_uploaded_file('filename','destination') С тази функция преместваме файла в избраната от нас диреактория
if (move_uploaded_file($file_tmp,$upload_dir.$file_name)) {
//Казва на потребителя кога файла е качен и дава лйнк към него
echo "<center>Файла (<a href=\"$upload_dir$file_name\">$file_name</a>) е качен успешно! <br><br>
<center><img src=\"".$site_link."/".$upload_dir."".$file_name."\" border=\"0\"><br>
<b>HTML Link към картинката</b><br>
<input type=\"text\" value='<a href=".$snimkata."><img src=".$snimkata." border=0></a>' size=\"100\"><br>


»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>";
exit();
}else{
//Показва грешка при провал на преместването
echo "Има проблем при преместването на вашия файл. <br>»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>";
exit();
}
//Край на ....
// Ако формата не е попълнена да се покаже това :
}else{
//Началото на else

// Проверяване на сички наши заявки (да не се надвишава големината , и да е един от избраните типове файлове от нас)
for($i=0;$i<count($limitedext);$i++){
if (($i<>count($limitedext)-1))$commas=", ";else $commas="";
list($key,$value)=each($limitedext);
$all_ext .= $value.$commas;
}

//Изложението
echo "<br><h3>Качване на файлове</h3>"
."- Позволени типове : $all_ext</b> <br>"
."- Максимална големина = ". $size_bytes / 1024 / 1024 ."MB"
."<p><form method=\"post\" enctype=\"multipart/form-data\" action=\"\">"
."<input type=\"file\" name=\"filetoupload\"><br>"
."<input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"$size_bytes\"><br>"
."<input type=\"Submit\" name=\"uploadform\" value=\"Качи\">"
."</form>";
}//Край на else

?>

Сега остава да направим 2 папки - gsms (мястото, където ще се записват gsm-ите) и upload (където ще се качват снимки на gsm)
Демо - http://sk0rp10n.freehostia.com/
п.п. надявамс се, че авторите на скриптовете, които съм използвал няма да се сърдят :wink:



/ Трябва да сте регистриран за да напишете коментар /
От: Styl3r
21:28 08-06-2010
Ново демо?
Your website has been suspended!

The web hosting account that hosts this website has expired!

If you are the owner of this website, please login to your hosting Control Panel and renew your account.

If you are a visitor to this website, please access this page later.
1