PDA

View Full Version : مبتدی: مشکل اساسی با کوکی



csharp.net
جمعه 06 آذر 1394, 09:20 صبح
سلام دوستان، بنده تا الان سی شارپ کردم و مدتیه شروع کردم php کار می کنم، مبانی این دو زبان خیلی شبیه و مشکلی ندارم، فقط این کوکی حالمو گرفته:افسرده:

هر چی مثال تا الان دیدم کمی گیج کننده بودن تا اینکه به این مثال زیر رسیدم


<form action="" method="post">
<input type="text" name="user"><br>
<input type="password" name="pass"><br>
<input type="checkbox" name="remember" id="remember" value="1"><br>
<input type="submit" value="submit">
</form>

<?php
if(strtolower($_POST['user']) == 'ali' && $_POST['pass'] == '1234')
{
$username=$_POST['user'];
$password=$_POST['pass'];

if(isset($_POST['remember']) == 'true')
{
setcookie("user", "$username", time()+120);
setcookie("pass", "$password", time()+120);
}
echo "welcom $username";
}
else
{
echo "incorrect User!";
}
?>


مثال بالا قابل فهمه ولی من بازم باهاش مشکل دارم. فرض کنید من میخوام یوزر و پسورد رو از کاربر بگیرم نمیشه که مثل کد بالا به صورت دستی بنویسم Ali و 12345 و منظر بمونم تا یه کاربر پیداش بشه و این یوزر و پسورد رو داشته باشه و لاگین بشه!!! اینو هم می دونم که میشه این یوزر و پسورد رو از بانک گرفت و ...
1- اینو برام روشن کنید که چرا کد بالا پیغام خطا میده؟
2- دقیقا اینو میخوام که ((( توی محیط لوکال یه فرم داشته باشم که وقتی یوزر و پسورد رو توش می نویسم به صورت یک کوکی ذخیره بشه (نه اینکه خودم بیام به صورت دستی بنویسم علی و ...)
بعد مرورگر رو ببندم و دوباره همون مقادیر رو وارد کنم خوش آمد بگه)))

ممنون میشم راهنمایی بفرمایید

us1234
جمعه 06 آذر 1394, 09:40 صبح
شما اگر سی شارپ هم تحت وب کار کرده باشید اینجا نباید مشکلی داشته باشید و احتمالا ویندوز فرم کار میکنید ...

1- برای اینکه در زمان اجرا اولیه قبل اینکه کاربر چیزی پست کنه ارور خطا را ندهد باید قبل از شرط درستی نام کاربری و پسورد اول چک کنید که اصلا کاربر روی submit کلیک کرده یا خیر مثلا با یه if مثل زیر :


if($_POST)
if(strtolower($_POST['user']) == 'ali' && $_POST['pass'] == '1234') {

2- برای این کار همان کد بالا شرط درستی یوزر پسورد و شرط remember را بردارید ، دیگه هر وقت فرم پر شد داخل کوکی ذخیره میشود .

csharp.net
جمعه 06 آذر 1394, 10:26 صبح
ممنون از پاسخگوییتون، ولی من نمی خوام ali , 123456 به صورت دستی چک بشه دوست دارم یه فرم داشته باشم که با یوزر و پسوردهای مختلف وارد بشم و هر کدومشون یک کوکی بشن واسه خودشون... مگه این فرم لاگین سایت ها اینطور نیستن که طرف کاربری و پسوردشو وارد میکنه و هم میره تو بانک ذخیره میشه و هم تبدیل به یک کوکی میشه؟
الان قسمت بانک رو کار نداشته باشین من میخوام با چند یوزر و پسورد چند تا کوکی بسازم و بعد مرورگر رو ببندم و دوباره وارد بشم یکیشون وارد کنم و پیغام Wellcome بهم بده