PDA

View Full Version : کمک در مورد سایت رای گیری(انتخابات) با C#‎ و sql 2008



meysam6796
یک شنبه 05 بهمن 1393, 12:07 عصر
سلام دوستان من دارم یه سایت درست میکنم با 2008 sql و زبان C#‎ . که یه رای دهنده داره و یه کاندید که رای دهنده به کاندید مورد نظر رای میده و دراخر کاندید که بیشترین رای میاره نشون میده(انتخابات) . همه کارا مربوط به ثبت نام کاندید و رای دهنده رو انجام دادم یعنی کاریر میتونه ثبت نام کنه و همچنین کاندید .الان یه مشکل دارم نمیدونم که چطور باید به کاندید مورد نظر رای بدی که یه فیلد داشته باشه تو جدول کاندید که هر کاربر که به کاندید مورد نظر رای داد یک واحد به این فیلد اضافه شود ،طوری که هر کاربر فقط یکبار رای بدهد ,سپس کاندیدی که بیشترین رای اورد رو نشون بده . حالا از دوستان هر کدوم که میدونن لطفا کمکم کنند ممنون

sajadsobh
یک شنبه 05 بهمن 1393, 15:31 عصر
خب رای دادن به کاندید که مشکلی نیست. یه فیلد قرار میدی واسه جدول کاندید با مقدار اولیه صفر. هر وقت کسی بهش رای میده یک واحد بهش اضافه میشه.
واسه اینکه هر کس هم بتونه به هر کاندید یکبار رای بده، شما باید یه جدول میانی بسازید که آیدی کاندید و رای دهنده رو توش ذخیره کنید یعنی وقتی که کسی به کاندید مورد علاقه اش رای داد یه رکورد به اون جدول اضافه بشه که حاوی آیدی شخص رای دهنده و کاندید باشه. فقط باید اینو هم در نظر بگیرید که قبل از اضافه کردن این رکورد بیاد چک بکنه ببینه اگه همچین رکوردی در جدول هست دیگه اینکار رو انجام نده یعنی هر کس فقط یکبار بتونه به اون شخص رای بده. والسلام.

meysam6796
دوشنبه 06 بهمن 1393, 09:14 صبح
ممنون از راهنمایی شما دوست عزیز ، مشکلم اینجاست که نمیدونم چطور باید به فیلد واسه آری یک واحد اضافه کنم ، دستوراتشو نمیدونم چون مثل متغییر تو سی شارپ نیست که راحت بشه یه واحد اضافه کرد بهش ، لطفا اگه امکان داره کدشو برام بگید خیلی ممنون میشم

sajadsobh
دوشنبه 06 بهمن 1393, 12:41 عصر
ممنون از راهنمایی شما دوست عزیز ، مشکلم اینجاست که نمیدونم چطور باید به فیلد واسه آری یک واحد اضافه کنم ، دستوراتشو نمیدونم چون مثل متغییر تو سی شارپ نیست که راحت بشه یه واحد اضافه کرد بهش ، لطفا اگه امکان داره کدشو برام بگید خیلی ممنون میشم

خب وقتی که به یکی میخواین رای بدین باید آیدی اون کاندید رو بگیرید و آپدیت کنید. یعنی مثلاً با این کوئری یک واحد به مقدار فیلدی که تعداد آرا رو ذخیره میکنه اضافه میشه. فرض کنیم آیدی ِ کاندیدای موردنظر 20 باشه:
UPDATE Candidate
SET Vote = Vote + 1
WHERE ID = 20

meysam6796
جمعه 10 بهمن 1393, 17:10 عصر
خیلی ممنون ، واسه این که هر کاربر فقط یه بار رای بده باید چکار کنم اگه میشه دستورشو برام بگید

sajadsobh
جمعه 10 بهمن 1393, 23:49 عصر
برای اینکه یکبار رای بده شما باید آیدی کاربر موردنظر رو با آیدی کاندید چک کنی. اگه توی جدول رای گیری این دو تا رو چک کردی و دیدی وجود داره پس باید اخطار بده.