PDA

View Full Version : آموزش: تغییر حالت وضعیت یک رکورد در جدول از ناپیدا به نمایان فقط برای یکبار



hamed-php
یک شنبه 14 فروردین 1390, 11:43 صبح
سلام

دوستان در دیتا بیس جدولی دارم که یکی از رکوردهای آن را یوزر میتواند از حالت ناپیدا به نمایان تبدیل کند تا مثلاً فلان یوزر دیگر آن را ببیند. کد 0 برای مخفی و کد 1 برای نمایان .
حالا یوزر اول اگر فقط یکبار فرصت آپدیت داشته باشد تا کد 0 را به 1 تبدیل کند چگونه است؟ و دیگر نتواند این عملیات رو انجام دهد.

Keramatifar
یک شنبه 14 فروردین 1390, 12:12 عصر
دوست عزیز
بهتره اینگونه کارها رو با برنامه نویسی سمت کلاینت توسط jQuery انجام بدی

hamed-php
یک شنبه 14 فروردین 1390, 13:45 عصر
ممنون از راهنمایی شما

نمونه شرط استفاده شده در jQuery که میشود از آن کمک گرفت به چه صورت میباشد؟

بدون jQuery : سمت سرور چگونه میشود پیغام داد که این فیلد قبلاً به 1 (یا همان رویت ) تبدیل شده است و دیگر قابل 0 شدن یا همان مخفی شدن نمیباشد

Keramatifar
دوشنبه 15 فروردین 1390, 11:57 صبح
نیاز به شرط نیست، می تونید مثلا از تابع toggleShow() در jQuery برای پنهان و نمایان کردن یک رکورد استفاده کنید

hamed-php
دوشنبه 15 فروردین 1390, 11:58 صبح
سلام

در هنگام استفاده از دستور update مثلاً دستور ذیل:


db_query("UPDATE ".MY_TABLE." SET enabled=1'' WHERE ID='".$_GET["id"]."'") or die (db_error());

آیا میشود فقط یکبار فرد بتواند رکوردی را آپدیت کند مثلاً اگر enabled=1 شود برای همیشه این مقدار بماند!

ممنون اگر دوستان راهنمایی بفرمایند

mtchabok
دوشنبه 15 فروردین 1390, 12:43 عصر
عزیزم این بستگی داره به اینکه کاربر شما در چه موقعی می خواد اینکار رو انجام بده . در موقعیتی که قبلا اینکار رو کرده و یا نه .
برای اینکه متوجه بشیم که قبلا اینکار رو کرده یا نه باید یه فیلد دیگه در نظر بگیرید تا انجام تغییر رو درش ذخیره کنید و روی اون فیلد شرط بزارید که آیا کاربر تغییر رو انجام داده یا نه .
اگه محدودیتی که میخواید بزاری فقط برای تغییر به 1 هس که میتونید اگه 0 بود کاربر حق 1 کردن رو داره و اگه 1 بود هیچ حقی برای تغییر نداره .
موفق باشید .

hamed-php
دوشنبه 15 فروردین 1390, 16:06 عصر
اگه محدودیتی که میخواید بزاری فقط برای تغییر به 1 هس که میتونید اگه 0 بود کاربر حق 1 کردن رو داره و اگه 1 بود هیچ حقی برای تغییر نداره .

سلام

کاربر یک بار مثلاً عمل آپدیت رو انجام میده و حالا رکورد در جدول برابر با 1 شده است. حالا برای مثال دوباره قصد آپدیت دارد که در اینجا میخواهیم یک پیغام برای او بیاید که شما مجوز آپدیت یا تغییر ندارید.

میشه با یک مثال توضیح بفرمایید.

Mr.Moghadam
دوشنبه 15 فروردین 1390, 18:25 عصر
مثلا جدول شما دارای فیلدهای زیره :


id = 1
name= "jack"
fname = "joe"
up = 0

حالا میاد جدول رو اپدیت میکنه و مثلا نام رو تغییر میده شما توی کدت اول چک میکنی ببینی مقدار فیلد up چنده .اگر صفر بود جدول رو آپدیت میکنی.جدولت که آپدیت شد مقدار فیلد up رو به 1 تغییر میدی.از این به بعد هر وقت کاربر خواست تا جدول رو ویرایش کنه نمیتونه چون فیلد up مقدارش یکه.


id = 1
name= "Ann"
fname = "joe"
up = 1



if($row['up'] == 0)
{
//update
}
else
{
echo "you coan not update ...";
}