PDA

View Full Version : مشاهده عناوین مختلف برای کاربران مختلف



naserzadeh
چهارشنبه 25 بهمن 1391, 20:58 عصر
من یک فرم ورد طراحی کردم که هر کاربر یک شماره مختص خودشو داره که با اون میتونه لاگین کنه حالا من یکسری مشخصات معین برای هر کاربر دارم میخوام مثلا اگه فلان کاربر با کد 123 وارد شد فقط اون اطلاعاتی که من براش تعیین کردم بتونه ببینه باید چجوری این کارو انجام بدم

hamed-php
چهارشنبه 25 بهمن 1391, 21:28 عصر
با SESSION کاربر رو در صفحات بعدی ردگیری کن و در صورت دریافت اطلاعات صحیح هر آنچه میخواهی به وی نمایش بده

naserzadeh
چهارشنبه 25 بهمن 1391, 21:46 عصر
چجوری
کداش باید چجوری باشه

hamed-php
پنج شنبه 26 بهمن 1391, 13:01 عصر
به این صورت :



<?php
session_start();
mysql_connect("mysql","یوزر","پسورد");
mysql_select_db("دیتابیس)");
if(isset($_SESSION['loggedin']))
{
die("لاگین میباشید");
}
if(isset($_POST['submit']))
{
$name = mysql_real_escape_string($_POST['username']);
$pass = mysql_real_escape_string($_POST['password']);
$mysql = mysql_query("SELECT * FROM users WHERE name = '{$name}' AND password = '{$pass}'");
if(mysql_num_rows($mysql) < 1)
{
die("پسورد اشتباه میباشد");
}
$_SESSION['loggedin'] = "بلی";
$_SESSION['name'] = $name;
die("ورود موفق");
}
echo "<form type='login.php' method='POST'>
Username: <br>
<input type='text' name='username'><br>
Password: <br>
<input type='password' name='password'><br>
<input type='submit' name='submit' value='Login'>
</form>";
?>



و دیتابیس :


CREATE TABLE `users` (
`id` BIGINT( 60 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`name` VARCHAR( 50 ) NOT NULL ,
`password` VARCHAR( 32 ) NOT NULL ,
`date` INT( 32 ) NOT NULL ,
`email` VARCHAR( 80 ) NOT NULL
);

naserzadeh
پنج شنبه 26 بهمن 1391, 18:39 عصر
به این صورت :



<?php
session_start();
mysql_connect("mysql","یوزر","پسورد");
mysql_select_db("دیتابیس)");
if(isset($_SESSION['loggedin']))
{
die("لاگین میباشید");
}
if(isset($_POST['submit']))
{
$name = mysql_real_escape_string($_POST['username']);
$pass = mysql_real_escape_string($_POST['password']);
$mysql = mysql_query("SELECT * FROM users WHERE name = '{$name}' AND password = '{$pass}'");
if(mysql_num_rows($mysql) < 1)
{
die("پسورد اشتباه میباشد");
}
$_SESSION['loggedin'] = "بلی";
$_SESSION['name'] = $name;
die("ورود موفق");
}
echo "<form type='login.php' method='POST'>
Username: <br>
<input type='text' name='username'><br>
Password: <br>
<input type='password' name='password'><br>
<input type='submit' name='submit' value='Login'>
</form>";
?>



و دیتابیس :


CREATE TABLE `users` (
`id` BIGINT( 60 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`name` VARCHAR( 50 ) NOT NULL ,
`password` VARCHAR( 32 ) NOT NULL ,
`date` INT( 32 ) NOT NULL ,
`email` VARCHAR( 80 ) NOT NULL
);


من این کارو انجام دادم که وقتی طرف یوزر و پسورد وارد میکنه اگه درست باشه وارد صفحه مشخص میشه اگه هم نشه پیغام بهش میده منظور شما این بوده درسته
آلان فرم من این کارو انجام میده میخوام مثلا کاربر علی با پسور 123 وقتی وارد میشه به یک صفحه مشخص بره و وقتی کار محمد با پسورد547وارد میشه به یک صفحه مشخص شده دیگه بره

hamed-php
پنج شنبه 26 بهمن 1391, 19:19 عصر
خوب برای این کار هم میتونی برای هر یوزر چک کنی اگر پسورد رو درست وارد کرده بود( بهمراه سشن مربوطه ) یک هدر به اون اختصاص بدی و به صفحه دلخواه ببریش:



if (isset($_SESSION['logedin'])){
header ('Location: ../547.php');
}


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

naserzadeh
پنج شنبه 26 بهمن 1391, 19:27 عصر
کجا باید از این دستور استفاده کنم فایلهای من در پیوست موجود هستن

hamed-php
پنج شنبه 26 بهمن 1391, 20:32 عصر
برای دوستانی که این تاپیک رو دنبال میکنند:
در فایل login-exed هر کاربر به صفحه خودش ارجاع داداه میشه :
بدین ترتیب :


if(mysql_num_rows($result) == 1) {
session_regenerate_id();
$member = mysql_fetch_assoc($result);
$_SESSION['SESS_MEMBER_ID'] = $member['member_id'];
$_SESSION['SESS_FIRST_NAME'] = $member['firstname'];
$_SESSION['SESS_LAST_NAME'] = $member['lastname'];
session_write_close();
$a=$member['member_id'];
header("location: $a.php");
exit();
}else {
header("location: login-failed.php");
exit();
}


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

روش صفحه سازی و محتوی در این تاپیک بسیار ساده در نظر گرفته شده است.
به متد GET میشه صفحات پویا ساخت که خود مبحثی جداگانه هست.

naserzadeh
پنج شنبه 26 بهمن 1391, 23:36 عصر
من اینو دارم طراحی میکنم که هر کاربر یک سری اطلاعات داره که این اطلاعات درون یک جدول با عنوان درس اول ..درس سوم میباشد اگه بخوام یک صفحه مدیریت براش بسازم باید از چه روشی استفاده کنم من در حال حاضر باید به دیتابیس توی phpmyadmin وارد بشم و برای درس اول .. تا درس سوم نمره وارد کنم توی کالمن های آنها اگه بخوام یک سفحه مدیریت داشته باشم باید چجوری پیش برم

naserzadeh
جمعه 27 بهمن 1391, 13:30 عصر
من صفحه مدیریت هم راه اندازی کردم ولی یه مشکل هست اینه که چجوری دوتا جدول را به هم متصل کنم یک جدول که مربوط میشه به یوزهام و جدول بعدی هم که نمرات آونا میشه که براشون تعریف کریم که وقتی دانشجو وارد میشه به صفحه مورد نظرش برسه ولی مشل اینجاست که اطلاعات و چجوری با هم مچ کنم مثلا اگه من توی جدول نمرات داده وارد میکنم معلوم بشه که برای کدوم کاربر هستش

naserzadeh
پنج شنبه 03 اسفند 1391, 18:55 عصر
? ?

MRmoon
جمعه 04 اسفند 1391, 07:49 صبح
خوب تو بخش نمرات یه یوزر آیدی بذار که با اون کاربری که آیدیش اون باشه پیدا کنی!

hamed-php
جمعه 04 اسفند 1391, 19:58 عصر
هر کاربر در جدول کاربران یک id داره
هر نمره هم برای خودش یه id میتونه داشته باشه تو جدول نمرات .
تو جدول نمرات یک ستون دیگه بساز مثل mid که این در واقع همون id هر کاربر هست. حالا تو جدول کاربران، فردی بنام مثلاً علی id برابر 1 داره. تو جدول نمرات هم هرکی mid برابر 1 داشت یعنی علی هست.
امیدوارم واضح باشه و بتونه کمکتون کنه!

naserzadeh
شنبه 05 اسفند 1391, 23:03 عصر
هر کاربر در جدول کاربران یک id داره
هر نمره هم برای خودش یه id میتونه داشته باشه تو جدول نمرات .
تو جدول نمرات یک ستون دیگه بساز مثل mid که این در واقع همون id هر کاربر هست. حالا تو جدول کاربران، فردی بنام مثلاً علی id برابر 1 داره. تو جدول نمرات هم هرکی mid برابر 1 داشت یعنی علی هست.
امیدوارم واضح باشه و بتونه کمکتون کنه!
یعنی یک فیلد mid که AUTO_INCREMENT باشه بسازم که با هر بار id اونو اضاف بشه بعد وقتی بخوام علی رو صدا بزنم دیگه اونو صدا زده میشه!!!!!درسته

naserzadeh
شنبه 05 اسفند 1391, 23:40 عصر
اگه میشه یه توضیح کوچولو راجب کداش هم بگین

hamed-php
سه شنبه 08 اسفند 1391, 14:34 عصر
یعنی یک فیلد mid که AUTO_INCREMENT باشه بسازم که با هر بار id اونو اضاف بشه بعد وقتی بخوام علی رو صدا بزنم دیگه اونو صدا زده میشه!!!!!درسته

نه نیازی نیست mid بصورت AUTO_INCREMENT باشه!
mid در این جدول مطابقت داره با همون id فرد در جدول کاربران. یعنی اگه علی id برابر 3 داشت باید mid هم تو جدول نمرات برابر 3 باشه. تو جدول کاربران میگی برو نمراتی رو بخون که mid آنها برابر مثلا 3 هست و اونوقت تمام نمرات علی رو به کاربر نمایش میدی.