• Sky
  • Blueberry
  • Slate
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Orange
  • Banana
  • Apple
  • Emerald
  • Chocolate
  • Charcoal

عضویت ویژه طلایی گارد ایران با تخفیف 50%

برای عضویت کلیک کنید

9 ارسال در این موضوع قرار دارد

درود


 


با آموزش حرفه ای PHP در خدمت شما هستیم


 


هر روز 1 آموزش مخطلف قرار داده میشه


 


هر چیزی بود پ.خ کنید تاپیک خراب نشه فدا مدا


 


پسر جهنمی گارد ایران


GHOST1، C0d3!Nj3ct!0n، mrarash1392 و 5 کاربر دیگر پسندیده اند

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای فایل در PHP توابع مختلفی تعریف می‌شود که برای باز کردن، بستن، خواندن یک فایل استفاده می‌شود. به اختصار با مهمترین این توابع برای فایل آشنا می‌شویم.

باز کردن فایل در PHP تابع fopen

تابع ()fopen برای باز کردن فایل ها در پی اچ پی استفاده می‌شود. اولین پارامتر این تابع مشخص می‌کند که تابع با چه نامی باید باز شود و دومین پارامتر مدل فایل را مشخص میکند. در ادامه انواع مدل های این فایل را با ذکر ویژگی توضیح خواهیم داد.

یک مثال در مورد تابع ()fopen مشاهده کنید و با ساختار آن آشنا شوید:

<html>
<body>
 
<?php
$file=fopen("welcome.txt","r");
?>
 
</body>
</html>

در این مثال welcome.txt نام یک فایل در PHP است و می‌خواهیم تا باز شود و r مدل این فایل است.

فایل ها ممکن است با یکی از مدل های زیر باز شوند:

 

توضیح

مدل

تنها می‌خواند. در ابتدای فایل شروع می‌شود

r

می‌خواند/ می‌نویسد. در ابتدای فایل شروع می‌شود

r+

تنها می‌نویسد. یک فایل را باز کرده و متن داخلش را پاک می‌کند و یا یک فایل جدیدی که وجود ندارد را می‌سازد

w

می‌خواند و می‌نویسد. یک فایل را باز کرده و متن داخلش را پاک می‌کند و یا یک فایل جدیدی که وجود ندارد را می‌سازد

w+

اضافه کردن. باز می‌کند و در انتهای فایل می‌نویسد یا یک فایل جدید که وجود ندارد را ایجاد می‌کند

a

می‌خواند و اضافه می‌کند. محتویات فایل را با نوشتن آن در آخر فایل حفظ می‌کند.

a+

تنها می‌نویسد.یک فایل جدید می‌سازد. اگر در فایل اشتباه و خطا وجود دارد بر‌میگرداند.

x

می‌خواند و می‌نویسد. یک فایل جدید می‌سازد. اگر در فایل اشتباه و خطا وجود دارد بر‌میگرداند

x+

 

 

  •  نکته: اگر تابع ()fopen نتوانستد فایل مشخصی را باز کند تنها ۰ را بر می‌گرداند.

مثال زیر  پیامی را در صورتی که فایل مشخصی را نتواند باز کند را ایجاد می‌کند.

<html>
<body>

<?php
$file=fopen("welcome.txt","r") or exit("Unable to open file!");
?>

</body>
</html>

در این مثال اگر فایل welcome.txt باز نشود پیام نمی‌تواند فایلی را باز کند خارج می‌شود.

 بستن فایل در PHP تابع ()fclose

این تابع برای بستن فایل در PHP استفاده می‌شود:

<?php
$file = fopen("test.txt","r");

//some code to be executed

fclose($file);
?>
 چک کردن انتهای فایل

تابع ()feof اگر انتهای فایل در دسترس باشد، آن را چک می‌کند

تابع ()feof برای حلقه هایی که تعداد طول داده های آن مشخص نیست بسیار مناسب است.

  • نکته : به یاد داشته باشید که شما نمی توانید در این مورد فایل هایی که مدل x،a،w هستند را بازکنید.

نحوه نوشتن این فایل به صورت زیر است:

if (feof($file)) echo "End of file";
خواندن یک فایل به صورت خط به خط تابع ()fgets

این تابع برای خواندن تک تک خط ها در یک فایل استفاده می‌شود.

مثال زیر هر خط فایل خوانده می‌شود تا زمانی که انتهای فایل دسترسی پیدا کند.

<?php
$file = fopen("welcome.txt", "r") or exit("Unable to open file!");
//Output a line of the file until the end is reached
while(!feof($file))
  {
  echo fgets($file). "<br>";
  }
fclose($file);
?>

ابتدا باید دستور بدهیم که تا انتهای فایل را بخواند تا زمانی که به انتهای فایل برسد تک تک خط ها را نیز بخواند.

خواندن تک تک کاراکترهای یک فایل تابع ()fgetc

این تابع تک تک کاراکترهای یک فایل را می‌خواند. به این صورت که پس از خواند فایل اشاره گر آن را به کاراکتر بعدی انتقال می‌دهد.

مثال زیر تک تک کاراکتر های یک فایل را می‌خواند تا زمانی که به انتهای فایل دسترسی پیدا کند.

<?php
$file=fopen("welcome.txt","r") or exit("Unable to open file!");
while (!feof($file))
  {
  echo fgetc($file);
  }
fclose($file);
?>

در این مثال تا زمانی که به انتهای فایل برسد تک تک کاراکتر ها را میخواند.

برای دسترسی به تمام توابع قایل می‌توانید به سیستم فایل در PHP مراجعه کنید.

 
sezar1370، arashghost، mhabob و 6 کاربر دیگر پسندیده اند

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

تابع date در PHP

 

تابع date در PHP برای قالب بندی تاریخ/زمان، محاسبه زمان، نمایش یک تاریخ خاص، ایجاد یک برچسب زمانی و… استفاده می‌شود.

این تابع از توابع از پیش نوشته شده در PHP است.

یک  تابع date در PHP به صورت زیر نوشته می‌شود:

date(format,timestamp)

در بخش  format باید مقداری نوشته شده باشد. قالب بندی را برای برچسب زمان مشخص می‌کند.

پر کردن بخش timestamp اختیاری است. برچسب زمان را مشخص می‌کند. به طور پیش فرض تاریخ و زمان آن لحظه است.

 

قالب بندی تاریخ در PHP

 

پارامترهای مورد نیاز بخش format در تابع ()date مشخص می‌کند که چگونه تاریخ و زمان را قالب بندی کنید.

کاراکترهایی که می‌توانیم استفاده کنیم به صورت زیر است:

  • d : نشان دهنده روزهای یک ماه(۰-۳۱)
  • m : نشان دهنده یک ماه (۰-۱۲)
  • Y : نشان دهنده یک سال (با چهار رقم)

لیست کامل این کاراکتر ها را در بخش format می‌توانید در بخش تابع ()date سایت w3schools مشاهده کنید.

کاراکترهای دیگر مانند “/”، “.”، “-” در بین حروف قالب بندی قرار داده شوند، به صورت زیر:

<?php
echo date("Y/m/d") . "<br>";
echo date("Y.m.d") . "<br>";
echo date("Y-m-d");
?>

خروجی دستور زیر می‌تواند تاریخ هایی شبیه این باشد:

۲۰۰۹/۰۵/۱۱
۲۰۰۹.۰۵.۱۱
۲۰۰۹-۰۵-۱۱

برچسب زمان تابع date در PHP

 

همان طور که گفته شد استفاده از پارامترهای  timestamp به صورت اختیاری است و دستور خالی گذاشتن این بخش، به طور پیش فرض تاریخ و زمان همان لحظه را استفاده می‌کند.

از تابع ()mktime برای برگرداندن یک برچسب زمان unix استفاده می‌شود. به طرز نوشتن این تابع به صورت زیر است:

mktime(hour,minute,second,month,day,year,is_dst)

در ادامه یک مثال مشاهده می‌کنید که از تایع ()mktime استفاده شده است و می‌خواهیم تاریخ فردا را مشخص نماییم.

<?php
$tomorrow = mktime(0,0,0,date("m"),date("d")+1,date("Y"));
echo "Tomorrow is ".date("Y/m/d", $tomorrow);
?>

خروجی مثال قبل بسته به تاریخ متفاوت است اما می‌تواند خروجی همانند زیر داشته باشد:

Tomorrow is 2009/05/12

GHOST1، sezar1370، mrarash1392 و 4 کاربر دیگر پسندیده اند

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

آرایه دو بعدی در PHP

 

 آرایه چند بعدی می‌تواند درون خود آرایه داشته باشد یعنی عناصر یک آرایه، خود یک آرایه است.

در این راستا ما می‌توانیم آرایه دو بعدی و یا سه بعدی داشته باشیم. مثال زیر یک آرایه دو بعدی در PHP است.

<!DOCTYPE html>
<html>
<body>

<?php
// A two-dimensional array
$cars = array
   (
   array("Volvo",100,96),
   array("BMW",60,59),
   array("Toyota",110,100)
   );

echo $cars[0][0].": Ordered: ".$cars[0][1].". Sold: ".$cars[0][2]."<br>";
echo $cars[1][0].": Ordered: ".$cars[1][1].". Sold: ".$cars[1][2]."<br>";
echo $cars[2][0].": Ordered: ".$cars[2][1].". Sold: ".$cars[2][2]."<br>";
?>

</body>

در این مثال درون آرایه، آرایه ای دیگر تعریف شده است. این آرایه جزو آرایه های دو بعدی است.

شاید بگویید چرا آرایه دو بعدی است؟ تنها کافی است، آرایه نوشته شده را به صورت یک ماتریس تصور کنید.

متوجه می‌شوید که این آرایه را می‌تواند مانند یک ماتریس دو در دو نوشت. خروجی این دستور به صورت زیر است:

Volvo: Ordered: 100. Sold: 96
BMW: Ordered: 60. Sold: 59
Toyota: Ordered: 110. Sold: 100

باید توجه داشت که  آرایه چند بعدی می‌تواند تلفیقی از آرایه عددی و آرایه انجمنی است.

در این مثال از روش بیان آرایه عددی در بخش دستور echo استفاده شده است.

 

آرایه چند بعدی در PHP

 

یک آرایه چند بعدی، می‌تواند خود شامل آرایه باشد و هر یک از آرایه خود شامل چندین آرایه است. به مثال زیر دقت کنید:

$families = array
  (
  "Griffin"=>array
  (
  "Peter",
  "Lois",
  "Megan"
  ),
  "Quagmire"=>array
  (
  "Glenn"
  ),
  "Brown"=>array
  (
  "Cleveland",
  "Loretta",
  "Junior"
  )
  );

این مثال یک آرایه چند بعدی در PHP را نشان می‌دهد که خود شامل چندین آرایه است.
آرایه هایی شبیه به مثال قبل خروجی هایی شبیه به خروجی زیر را دارا هستند:

Array
(
[Griffin] => Array
(
[0] => Peter
[1] => Lois
[2] => Megan
)
[Quagmire] => Array
(
[0] => Glenn
)
[brown] => Array
(
[0] => Cleveland
[1] => Loretta
[2] => Junior
)
)

یک مثال دیگر در ادامه مثال قبل مشاهده کنید و تنها یک آرایه از آن را می‌خواهیم به چاپ برسانیم:

echo "Is " . $families['Griffin'][2] .
" a part of the Griffin family?";
DeMoN، arashghost، good_boy و 2 کاربر دیگر پسندیده اند

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

آپلود فایل در PHP

 

پی اچ پی این امکان را به شما می‌دهد که یک فایل را در سرور خود آپلود کنید.

 

برای این که کاربران بتوانند یک فایل را در سرور شما آپلود نمایند ساده ترین کار ایجاد یک فرم بارگذاری فایل است.

 

ساختن یک فرم برای آپلود فایل

 

فرم به سایت شما این امکان را می‌دهد که کاربران به خیلی ساده یک فایل را آپلود نمایند.

 

در مثال زیر کد نویسی یک فرم HTML را برای آپلود  فایل  در PHP مشاهده می‌کنید.

<html>
<body>

<form action="upload_file.php" method="post"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file"><br>
<input type="submit" name="submit" value="Submit">
</form>

</body>
</html>

نکات موجود در فرم HTML بالا:

 

  • مشخصه enctype در برچسب فرم بیان کننده نوع محتوای فایلی است که می‌خواهد آپلود شود.
  • multipart/form-data زمانی استفاده می‌شود که فایلی که می‌خواهد آپلود شود از جنس  داده های باینری باشد.
  • مشخصه “type=”file در برچسب input زمانی استفاده می‌شود که ورودی به عنوان یک فایل پردازش شود. در حقیقت مسئول پردازش فرم است.

در نظر داشته باشید که بارگذاری فایل از طرف کاربران در سرور کاری پر خطر است.

 

تنها به کاربرانی مطمئن اجزا آپلود یک فایل در PHP را بدهید.

 

ساختن اسکریپت هایی برای آپلود فایل در PHP

 

فایلی که در دستور HTML ساختیم به نام “upload_file.php” است.

 

این فایل شامل کد هایی برای آپلود فایل در PHP است. این کد ها به صورت زیر است:

<?php
if ($_FILES["file"]["error"] > 0)
  {
  echo "Error: " . $_FILES["file"]["error"] . "<br>";
  }
else
  {
  echo "Upload: " . $_FILES["file"]["name"] . "<br>";
  echo "Type: " . $_FILES["file"]["type"] . "<br>";
  echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
  echo "Stored in: " . $_FILES["file"]["tmp_name"];
  }
?>

در مثال بالا کد PHP به صورت شرطی نوشته است که اگر متغیر گلوبال file_$ دارای خطا بود،

 

نمایش دهد که خطا وجود دارد و اطلاعات دیگر را نمایش ندهد در غیر این صورت یعنی اگر متغیر هیچ خطایی را شامل در بر نداشت،

 

نام فایل، نوع فایل، سایز وکپی نام فایلی که به صورت موقتی در سرور ذخیره شده است را نمایش می‌دهد.

 

پارامترهایی که در ورودی فایل استفاده می‌شود به صورت زیر است:

 

     نام فایلی که آپلود شده است: $_FILES["file"]["name"]

 

نوع فایلی که آپلود شده است:$_FILES["file"]["type"]

 

سایز فایلی که آپلود شده است :$_FILES["file"]["size"]

 

کپی نام فایلی که به صورت موقتی در سرور ذخیره شده است:$_FILES["file"]["tmp_name"]

 

این یک روش ساده برای آپلود یک فایل در PHP است.

 

اما ب دلایل امنیتی باید محدودیت هایی برای فایلی هایی که کاربران مجاز به بارگذاری هستند قرار دهید.

 

محدودیت آپلود فایل در PHP

 

در این اسکریپت ها یک سری محدودیت ها برای آپلود فایل ها قرار می‌دهیم.

 

در این مثال تنها فایلی هایی با فرمت های .gif .jpeg و . png و حداکثر تا ۲۰ کیلو بایت می‌توان آپلود کرد.

<?php
$allowedExts = array("gif", "jpeg", "jpg", "png");
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/jpg")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/x-png")
|| ($_FILES["file"]["type"] == "image/png"))
&& ($_FILES["file"]["size"] < 20000)
&& in_array($extension, $allowedExts))
  {
  if ($_FILES["file"]["error"] > 0)
    {
    echo "Error: " . $_FILES["file"]["error"] . "<br>";
    }
  else
    {
    echo "Upload: " . $_FILES["file"]["name"] . "<br>";
    echo "Type: " . $_FILES["file"]["type"] . "<br>";
    echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
    echo "Stored in: " . $_FILES["file"]["tmp_name"];
    }
  }
else
  {
  echo "Invalid file";
  }
?>

   در این دستور یک آرایه تعریف شده است که اگر فایلی که می‌خواهیم بارگذاری شود

 

باید یکی از این فرمت ها را دارا باشد و سایز این فایل کمتر از ۲۰۰۰۰ هزار بایت باشد و در آخر if اول نوشته شده است”

 

و اگر  پسوند فایل در آرایه جزو پسوندهای معرفی شده باشد شرط زیر را بررسی کن”

 

extension یک متغییری به نام Temp تعریف کرده است و آخرین temp مورد نظرش است(فرمت فایل).

 

متغیر temp می‌گوید اگر نام فایل دارای چندین آرایه بود آن را با علامت” . ” از هم جدا کن.

 

در حقیقت آخرین آرایه بعد از نقطه همان فرمت فایل می‌شود.

 

ذخیره کردن فایل آپلود شده

 

هنگامی که اسکریپت ها به پایان رسیدند یک کپی به صورت موقت از فایل نمایان می‌شود.

 

برای این که فایل آپلود شده را ذخیره کنیم نیاز داریم آن را در یک جای دیگر کپی کنیم. به مثال زیر دقت کنید:

<?php
$allowedExts = array("gif", "jpeg", "jpg", "png");
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/jpg")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/x-png")
|| ($_FILES["file"]["type"] == "image/png"))
&& ($_FILES["file"]["size"] < 20000)
&& in_array($extension, $allowedExts))
  {
  if ($_FILES["file"]["error"] > 0)
    {
    echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
    }
  else
    {
    echo "Upload: " . $_FILES["file"]["name"] . "<br>";
    echo "Type: " . $_FILES["file"]["type"] . "<br>";
    echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
    echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>";

    if (file_exists("upload/" . $_FILES["file"]["name"]))
      {
      echo $_FILES["file"]["name"] . " already exists. ";
      }
    else
      {
      move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $_FILES["file"]["name"]);
      echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
      }
    }
  }
else
  {
  echo "Invalid file";
  }
?>

 مثال قبل همان مثال بالاست با این تفاوت که می‌خواهیم آن را ذخیره کنیم.

 

اگر فایل وجود داشت نمایش بده که فایل وجود دارد و اگر وحود نداشت یک کپی از آن را ذخیره کن و نام آن را آپلود بساز.

 
C0d3!Nj3ct!0n، jen، arashghost و 1 کاربر دیگر پسندیده اند

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

چگونه یک کوکی در PHP ایجاد کنید؟

 

ایجاد کردن یک کوکی در PHP بسیار ساده است، تنها کافی است از تابع ()setcookie استفاده کنید.

 

اما باید این نکته مورد توجه قرار دهید که این تابع باید قبل از برچسب <html> قرار بگیرد.

 

نحوه نگارش کوکی:

setcookie(name, value, expire, path, domain);

در مثال زیر یک کوکی به نام ” user” ایجاد می‌کنیم و “Alex Porter” را به عنوان ارزش برایش در نظر می‌گیریم.

 

همچنین برایش این ویژگی را در نظر می‌گیریم که این کوکی بعد از ۱ ساعت دیگر قابل استفاده نباشد.

<?php
setcookie("user", "Alex Porter", time()+3600);
?>

<html>
.....

ارزش کوکی به صورت خودکار در URL ذخیره می‌شود و به صورت خودکار از بین می‌رود.

 

اطلاعات کوکی را می‌توان به نحو دیگری نیز غیر قابل استفاده کرد.

 

در مثال زیر این روش را توضیح می‌دهیم.

 

لازم به ذکر است که این روش ساده تر است و می‌توان ثانیه ها را نیز لحاظ کرد.

<?php
$expire=time()+60*60*24*30;
setcookie("user", "Alex Porter", $expire);
?>

<html>
.....

زمان استفاده از این کوکی تنها برای یک ماه است، این زمان را به صورت ۶۰ ثانیه، ۶۰ دقیقه، ۲۴ ساعت، ۳۰ روز نمایش داده شده است.

 

بازیابی ارزش یک کوکی در PHP

 

برای بازیابی ارزش یک کوکی کافی است از متغیر cookie_$ استفاده کنید.

 

در مثال زیر ارزش یک کوکی به نام “user” را بازیابی می‌کنیم و آن را بر روی صفحه نمایش می‎‌دهیم.

<?php
// Print a cookie
echo $_COOKIE["user"];

// A way to view all cookies
print_r($_COOKIE);
?>

در مثال زیر از تابع ()isset برای بررسی کوکی استفاده می‌شود.

 

این که آیا برای این کاربر کوکی اعمال شده است یا خیر.

<html>
<body>

<?php
if (isset($_COOKIE["user"]))
  echo "Welcome " . $_COOKIE["user"] . "!<br>";
else
  echo "Welcome guest!<br>";
?>

</body>
</html>

اگر در بالا کاربر قبلا عضو شده باشد با نام او به خوش آمد می‌گوید در غیر این صورت به عنوان مهمان سایت به او خوش آمد می‌گوید.

<?php
// set the expiration date to one hour ago
setcookie("user", "", time()-3600);
?>

در این مثال کوکی تنها ۱ ساعت قابلیت استفاده دارد.

 

اگر دقت کنید قبل از بیان زمان به جای علامت + از علامت – استفاده شده است و در این زمان کوکی پاک خواهد شد.

 

پشتیبانی مرورگر از کوکی

 

اگر برنامه شما جزو برنامه ‌هایی باشد که مرورگر کوکی را پشتیبانی نمی‌کند مجبور هستید از روش دیگری برای ذخیره کوکی استفاده کنید.

 

در مبحث فرم ها به روش تصویب داده های فرم در PHP اشاره کردیم.

 

فرم زیر کاربر را در صورت کلیک بر روی دکمه submit به فایل “welcome.php” می‌فرستد.

<html>
<body>

<form action="welcome.php" method="post">
Name: <input type="text" name="name">
Age: <input type="text" name="age">
<input type="submit">
</form>

</body>
</html>

و برای بازیابی ارزش فایل “welcome.php” به صورت زیر عمل می‌کنیم:

<html>
<body>

Welcome <?php echo $_POST["name"]; ?>.<br>
You are <?php echo $_POST["age"]; ?> years old.

</body>
</html>

 در این دستور ارزش  نوشته شده در فایل “welcome.php”  ذخیره می‌شود و برای بازیابی باید به این فایل رجوع کرد.

 

و دیگر کوکی تعریف نمی‌شود.

 
arashghost، C0d3!Nj3ct!0n و DeMoN پسندیده اند

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

Sessions در PHP

جلسه یا Sessions در PHP برای ذخیره اطلاعات کاربر استفاده می‌شود.

 

در کل فرایند سشن در کامپیوتر به معنای باز کردن یک نرم افزار و ایجاد یک سری تغییرات در نرم افزار و بستن آن است.

 

اما در سیستم وب و اینترنت این موضوع به صورت دیگری رخ می‌دهد.

 

هاست یا سرور سایتی که شما بازدید کننده آن هستید، نمی‌تواند اطلاعاتی راجع به شما به سرور بدهد زیرا مرورگر HTML هیچ اطلاعاتی راجع به شما نمی‌تواند بگوید.

 

و در این شرایط تمایز کاربران از هم دچار مشکل می‌شود و سرور نمی‌تواند به شما خدماتی ارائه دهد.

 

برای حل این مشکل، برنامه نویسی PHP بخشی به نام Sessions را تعریف نموده است.

 

اطلاعات شما با استفاده از این دستور در سرور سایتی که از آن بازدید می‌کنید ذخیره می‌شود.

 

بنابراین برای مشاهده صفحات مختلف یک سایت نیاز نیست در هر صفحه نام کاربری و رمز عبور خود را وارد نمایید. 

 

راحتی ای که شما در بازدید صفحات یک سایت دارید به دلیل این دستور است.

 

هاست سایتی که به ان وارد می‌شوید در لحظه ورود یک Sessions خاص به نام unique ID – UID برایتان می‌سازد و این اطلاعات را در سشن ذخیره می‌کند.

 

این اطلاعات تا زمانی که در سایت هستید یا Sessions دارای اعتبار است در سرور ذخیره می‌شود همچنین این اطلاعات در کوکی نیز ذخیره می‌شود.

 

Sessions نیز همانند کوکی ها موقتی هستند و تا یک زمان خاص ذخیره می‌شود.

 

شروع Sessions در PHP

 

قبل از ذخیره شدن اطلاعات در سشن، شما باید Sessions را شروع کنید.

 

برای این کار باید دقت داشته باشید که تابع ()session_start باید قبل از برچسب <html> نوشته شود.

<?php session_start(); ?>

<html>
<body>

</body>
</html>

این کد به شما اجازه می‌دهد زمانی که کاربر در سایت ثبت نام می‌کند،اطلاعاتش ذخیره شود و یک UID برای session کاربر می‌سازد.

 

ذخیره متغیرهای session درPHP

 

درست ترین راه برای ذخیره و بازیابی اطلاعات درون سشن  استفاده از متغیر SESSION_$ در PHP است.

 

به دستور زیر دقت کنید.

<?php
session_start();
// store session data
$_SESSION['views']=1;
?>

<html>
<body>

<?php
//retrieve session data
echo "Pageviews=". $_SESSION['views'];
?>

</body>
</html>

 این دستور می‌خواهد تعداد  دفعات نمایش صفحه  را مشخص کند بنابراین خروجی به صورت زیر است:

 

Pageviews=1

مثال زیر یک دستور است که با تعداد دفعات بازدید یک صفحه را نشان می‌دهد.

 

 

با استفاده از تابع ()isset متغیری به نام view را که در session ذخیره شده است را بررسی می‌کند،

 

 

اگر کاربر برای بار اول  وارد سایت شده است عددی برابر با ۱ را نمایش می‌دهد و در ورود های بعدی مقدار آن را افزایش می‌دهد.

<?php
session_start();

if(isset($_SESSION['views']))
$_SESSION['views']=$_SESSION['views']+1;
else
$_SESSION['views']=1;
echo "Views=". $_SESSION['views'];
?>

پاک کردن یک session در PHP

 

هنگامی که بخواهید اطلاعاتی را از یک session پاک کنید، می‌توانید از تابع های ()unset و ()session_destroy استفاده کنیم.

 

تابع ()unset برای آزاد کردن یک متغیر در session استفاده می‌شود.

 

به مثال زیر دقت کنید:

<?php
session_start();
if(isset($_SESSION['views']))
  unset($_SESSION['views']);
?>

برای پاک کردن کامل یک session از تابع ()session_destroy استفاده می‌شود:

<?php
session_destroy();
?>

باید دقت داشته باشید این دستور تمام اطلاعات درون session را پاک می‌کند.

 

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

ارسال ایمیل در PHP

 

در این بخش به معرفی تابع E-mail و چگونگی ارسال ایمیل در PHP می‌پردازیم.

 

از فرم ها در سایت برای عضویت کاربران، ایجاد خبرنامه ، تماس با ما و … استفاده میشود

 

همه این فرم ها دارای یک بخش ایمیل هستند.

 

با استفاده از این بخش میتوان ایمیلی مبتنی بر عضویت در سایت یا خبر برای کاربر فرستاد. تابع ()Email این امکان را در PHP ایجاد میکند.

 

این تابع به صورت زیر نوشته میشود:

mail(to,subject,message,headers,parameters)
  • هر کدام از پارامترهایی که در مقابل این تابع تعریف شده است یک وظیفه خاص دارند. این وظایف به شرح زیر است:

    • to :  نوشتن این پارامتر اجباری است و ایمیل گیرنده و یا گیرندگان را مشخص میکند.
    • subject : نوشتن این پارامتر اجباری است و از نوع متن بوده و تنها میتواند یک خط باشد. موضوع عنوان ایمیل را مشخص میکند
    • message : نوشتن این پارامتر اجباری است و از نوع متن بوده و نباید بیش از ۷۰ کاراکتر باشد.
    • متن نوشته شده داخل ایمیل را مشخص میکند و هر خط باید با کاراکتر (n/) از خط قبل و بعد جدا شود.
    • header :  نوشتن این پارمتر اختیاری است.  Cc یا Bcc را مشخص میکند. برای جدا کردن هر خط از خط قبلی باید از کارکتر (\r\n) استفاده شود.
    • Parametrs : نوشتن این بخش اختیاری است. برای اضافه کردن پارامتر ها به برنامه ارسال ایمیل استفاده میشود.

ارسال ایمیل در PHP

 

کد نویسی زیر ساده ترین روش برای ارسال یک ایمیل از طریق PHP است.

 

البته فرستادن یک ایمیل به این سادگی بعید است در ادامه به روش کامل فرستادن ایمیل از طریق PHP را آشنا خواهید شد.

 

این تابع ایمیل را ارسال کرده و یک پیام مبتنی بر تایید برای کاربر میفرستد

  • <?php
    $to = "someone@example.com";
    $subject = "Test mail";
    $message = "Hello! This is a simple email message.";
    $from = "someonelse@example.com";
    $headers = "From:" . $from;
    mail($to,$subject,$message,$headers);
    echo "Mail Sent.";
    ?>
    
     بخش ایمیل در یک فرم PHP
  •  
  • مثال زیر بخشی از یک فرم که شامل ایمیل است را نشان میدهد.

  •  

  • در این  مثال متغیر ها اطلاعات را از کاربر گرفته و در متغیر REQUEST_$ ذخیره میکند.

  •  

  • در If بررسی میکند  که پارامترهای دلخواه در این متغیر برای ذخیره شدن نوشته شده اند

  •  

  • یا خیر اگر نوشته شده بودند که ذخیره کرده و ایمیلی برای کاربر میفرستند در غیر این صورت دوباره آن فرم را نمایش میدهد.

  • <html>
    <body>
    
    <?php
    if (isset($_REQUEST['email']))
    //if "email" is filled out, send email
      {
      //send email
      $email = $_REQUEST['email'] ;
      $subject = $_REQUEST['subject'] ;
      $message = $_REQUEST['message'] ;
      mail("someone@example.com", $subject,
      $message, "From:" . $email);
      echo "Thank you for using our mail form";
      }
    else
    //if "email" is not filled out, display the form
      {
      echo "<form method='post' action='mailform.php'>
      Email: <input name='email' type='text'><br>
      Subject: <input name='subject' type='text'><br>
      Message:<br>
      <textarea name='message' rows='15' cols='40'>
      </textarea><br>
      <input type='submit'>
      </form>";
      }
    ?>
    
    </body>
    </html>
    

    این روشی است برای فرستادن ایمیل به کاربر، اما لازم به ذکر است که این کد از امنیت برخودار نیست.

  • در بخش بعدی چگونگی ایجاد کردن امنیت برای این فرم را توضیح خواهیم داد.

DeMoN و arashghost پسند شده است

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال دیدگاه یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید دیدگاهی ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در سایت ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

درباره ی ما

تیم امنیتی گارد ایران یک گروه مستقل است که قوانین آن با خط مشی جمهوری اسلامی ایران مغایرت ندارد. تیم امنیتی گارد ایران از سال 1393 فعالیت خود را آغاز کرد و هدف این تیم تامین امنیت سایت ها و سرورهای ایرانی است. تیم ما همیشه برای دفاع از مرزهای سایبری سرزمین عزیزمان ایران آماده است.