PDA

View Full Version : سوال: چندتا سوال راجب فرم ثبت نام



htarahi
سه شنبه 10 فروردین 1389, 19:09 عصر
من یه فرم ثبت نام نوشتم اما به چندتا مشکل برخوردم :گیج::
1.فیلدهای ورودی رو از چپ به راست پر می کنه ،چه طوری اونو به از راست به چپ تغییر بدم ؟
2.database رو با phpmyadmin نوشتم.colation رو هم utf8_persian_ci گذاشتم اما توی mysql داده های فارسی رو نامفهوم وارد می کنه.اشکال از کجاست ؟
3.پسوورد رو با md5 رمزنگاری کردم ،چطور می تونم از رمز در اومدشون رو توی یه صفحه ی خاص از سایت مثلاً صفحه ی ادمین ببینم ؟
4.توی گذاشتن متون فارسی توی سایت مشکل دارم ،مثلاً نقطه رو آخر خط وارد می کنم اما اول خط نمایش داده میشن !
لازم به توضیحه که من encoding صفحات سایتم رو unicode قرار دادم :

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

binyaft
سه شنبه 10 فروردین 1389, 19:19 عصر
1 :
style="text-align:right;direction:rtl;"
2 : نمیدونم !!!!
3 : از توابع دکد استفاده کنید
4 :
<style>
body{
text-align:right;
direction:rtl;
}

سوالی بود در خدمتیم

htarahi
سه شنبه 10 فروردین 1389, 20:13 عصر
ازت ممنونم دوست عزیز:قلب:
جواب سوالات 1 رو کامل گرفتم .
خدا بچه هاتو زیاد کنه:گیج:
اما جواب سوال 2 موند:ناراحت:
در رابطه با سوال 3 هم توضیح بیشتری بدید لطفاً ...:متفکر:
جواب شما در قسمت 4 هم (البته یه
</script>رو در انتها جا انداخته بودید:قهقهه:)کل صفحه رو تحت تأثیر قرار میده در حالی که من این تأثیر رو فقط در درون یک table می خوام:گیج::افسرده:

mojtabadj
پنج شنبه 12 فروردین 1389, 15:15 عصر
من یه فرم ثبت نام نوشتم اما به چندتا مشکل برخوردم :گیج::
1.فیلدهای ورودی رو از چپ به راست پر می کنه ،چه طوری اونو به از راست به چپ تغییر بدم ؟
2.database رو با phpmyadmin نوشتم.colation رو هم utf8_persian_ci گذاشتم اما توی mysql داده های فارسی رو نامفهوم وارد می کنه.اشکال از کجاست ؟
3.پسوورد رو با md5 رمزنگاری کردم ،چطور می تونم از رمز در اومدشون رو توی یه صفحه ی خاص از سایت مثلاً صفحه ی ادمین ببینم ؟
4.توی گذاشتن متون فارسی توی سایت مشکل دارم ،مثلاً نقطه رو آخر خط وارد می کنم اما اول خط نمایش داده میشن !
لازم به توضیحه که من encoding صفحات سایتم رو unicode قرار دادم :

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />


جواب سوال 2:

بعد از کانکت به بانک این query رو بفرست



mysql_query(" SET NAMES 'utf8' ");


جواب 3: الگوریتم md5 برگشت ناپذیره

جواب 4: مشکلت تو rtl یا ltr هست

binyaft
پنج شنبه 12 فروردین 1389, 18:14 عصر
سلام دوست عزیز
برای اینکه فقط تیبل ها رو در مرورگر تحت تاثیر سی اس اس قرار بدید
باید از کد زیر استفاده کنید


<style>
table{
text-align:right;
direction:rtl;
}
</style>

برای دکد کردن هم توی سایت php.net کلمه ی decode رو جستجو کنید و یا توی گوگل md5 decode رو بسرچید حتما جواب میگیرید
جواب اون سوال بانک اطلاعاتی رو هم که فکر کنم دوست عزیز دادن

binyaft
پنج شنبه 12 فروردین 1389, 18:19 عصر
برای دکد کردن این صفحه رو ببین حتما جواب میگیری

http://php.net/manual/en/function.md5.php

yaqubian
پنج شنبه 12 فروردین 1389, 20:14 عصر
دوست عزیز
الگوریتم md5 یک الگوریتم یه طرفه است و قابل decode نیست. اون سایت هایی که ادعای این قضیه رو دارن یه جدول دارن که رشته شما رو با data های خودشون مقایسه می کنن.
موفق باشید

binyaft
جمعه 13 فروردین 1389, 20:58 عصر
من هم طبق یه الگوریتمی که توی یکی از سایت ها دیدم این حرف رو زدم!
خوب بالاخره خوبه که یه چیزی یاد گرفتیم

binyaft
سه شنبه 17 فروردین 1389, 11:37 صبح
توی پی اچ پی کلاس من یه کلاسی دیدم به نام md5 Decrypter . شاید بتونه کمک کنه

htarahi
چهارشنبه 18 فروردین 1389, 08:16 صبح
توی پی اچ پی کلاس من یه کلاسی دیدم به نام md5 Decrypter . شاید بتونه کمک کنه

همون طوری که آقای مدیر گفتن بود.یعنی از یه database استفاده می کنند صرفاً !
به آدرس زیر یه نگا بندازید .......
http://www.md5decrypter.co.uk/
کلاس های توی این ضمینه هم از یه کدوم از سایت های مثل سایت فوق بهره می برند.

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

htarahi
چهارشنبه 18 فروردین 1389, 08:23 صبح
اما یه سوال جدید ! :
می خوام بدونم چه جوری میشه که بعضی فرم های ثبت نام بدون نیاز به تغییر language سیستم و تنها با توجه به فیلد مربوطه زبان نوشتن رو فارسی یا انگلیسی می کنند ؟!

binyaft
چهارشنبه 18 فروردین 1389, 08:45 صبح
اینو دیگه باید با جاوا اسکریپت انجام بدید. اسکریپت امادش هم هست .

htarahi
چهارشنبه 18 فروردین 1389, 09:02 صبح
حدس می زدم اما گفتم تا بحث فرم لاگین داغه بپرسم ،بلکه کسی کار کرده باشه:لبخند::چشمک:

binyaft
چهارشنبه 18 فروردین 1389, 09:37 صبح
ببین این کد بدرتت میخوره

توضیح داخلش هست

http://weblog.nabi.ir/jscripts/farsikeyboard.js

htarahi
چهارشنبه 18 فروردین 1389, 12:14 عصر
بسیار بسیار ممنون
اما یه مشکل داره ،اونم اینکه فقط با IE جواب میده !
اگر با opera و firefox هم جواب بده که عالی میشه ،چون من صفحه ی پیش فرض سایتم رو Opera گذاشتم و تا الانم عااالی شده و مشکلی نداشتم ...

binyaft
چهارشنبه 18 فروردین 1389, 18:26 عصر
اینو دیگه ندارم ولی با جی کئوری شاید بشه بنویسی

jalaladdin
سه شنبه 25 خرداد 1389, 18:33 عصر
با سلام
من یک فرم ثبت نام برای سایتم ساختم وکدهای php بدین صورت میباشند
<?php


$con=mysql_pconnect("localhost","root","");
if(!$con)
{die('could not connect');}
mysql_select_db("register",$con);
mysql_query("SET NAMES UTF8");
mysql_set_charset("utf8");
$sql="insert into users(username,email,password,repassword)
values('$_POST[username]','$_POST[email]','$_POST[password]','$_POST[repassword]')";



$result = mysql_query($sql);

if($result)
{
echo mysql_affected_rows().'<b> Information Save Success </b>';
}


mysql_close($con);



?>
اطلاعات را از کاربر میگیرد و در پایگاه داده ذخیره میکند من میخواهم که اطلاعات تکراری مثل نام کاربری و ایمیل در پایگاه ذخیره نکند یعنی هنگام ثبت نام اگر این اطلاعات تکراری بود پیغام خطا دهد لطفا راهنمای کنید تشکر
http://www.barnamenevis.org/forum/images/statusicon/user_online.gif http://www.barnamenevis.org/forum/images/buttons/report.gif (http://www.barnamenevis.org/forum/report.php?p=1014289) http://www.barnamenevis.org/forum/images/misc/progress.gif http://www.barnamenevis.org/forum/images/buttons/edit.gif (http://www.barnamenevis.org/forum/editpost.php?do=editpost&p=1014289)

pashaie
سه شنبه 25 خرداد 1389, 18:51 عصر
من میخواهم که اطلاعات تکراری مثل نام کاربری و ایمیل در پایگاه ذخیره نکند یعنی هنگام ثبت نام اگر این اطلاعات تکراری بود پیغام خطا دهد لطفا راهنمای کنید تشکر


<?php
$con=mysql_pconnect("localhost","root","");
if(!$con)
{die('could not connect');}
mysql_select_db("register",$con);
mysql_query("SET NAMES UTF8");
mysql_set_charset("utf8");

// کد چک یوزر تکراری
$sql = "SELECT count(*) FROM users WHERE username = '{$_POST[username]}'";
$result = mysql_query($sql);
$rec = mysql_fetch_array($result);
if($rec[0]!=0){
// خطا
}

$sql="insert into users(username,email,password,repassword)
values('$_POST[username]','$_POST[email]','$_POST[password]','$_POST[repassword]')";



$result = mysql_query($sql);

if($result)
{
echo mysql_affected_rows().'<b> Information Save Success </b>';
}


mysql_close($con);


واسه چک کردن ایمیل هم باید کد بالا رو یه تغییر کوچیک بدی

jalaladdin
چهارشنبه 26 خرداد 1389, 10:09 صبح
سلام دوست گرامی ممنون از راهنماییتان
این کد رانوشتم اما مثل اینکه متوجه منظور سوالم نشدید من میخواهم علاوه بر پیغام خطا ،نام کاربری تکراری در پایگاه داده ذخیره نشود با توجه به این کد نام تکراری ذخیره میشود

Reza1607
چهارشنبه 26 خرداد 1389, 10:15 صبح
خوب این کد ها رو


$sql="insert into users(username,email,password,repassword)
values('$_POST[username]','$_POST[email]','$_POST[password]','$_POST[repassword]')";



$result = mysql_query($sql);

داخل else بذار به صورت زیر


$sql = "SELECT count(*) FROM users WHERE username = '{$_POST[username]}'";
$result = mysql_query($sql);
$rec = mysql_fetch_array($result);
if($rec[0]!=0){
// خطا
}else{
$sql="insert into users(username,email,password,repassword)
values('$_POST[username]','$_POST[email]','$_POST[password]','$_POST[repassword]')";
$result = mysql_query($sql);
}

jalaladdin
چهارشنبه 26 خرداد 1389, 21:02 عصر
سلام دوست گرامی مشکل ازاین بابت حل شد اما من میخواهم اگر ایمیل تکراری بودفقط پیغام ایمیل تکراری و یا اگر نام تکراری فقط پیغام نام تکراری را بدهد نه هر دو
من شرط else if را وارد کردم اما همان پیغام شرط اول را میدهد نمیدانم مشکل از کجاست

jalaladdin
چهارشنبه 26 خرداد 1389, 21:03 عصر
<?php
$username=$_POST['username'];
$email=$_POST['email'];
$con=mysql_pconnect("localhost","root","");
if(!$con)
{die('could not connect');}
mysql_select_db("register",$con);
mysql_query("SET NAMES UTF8");
mysql_set_charset("utf8");
// check kardan username AND email
$sql="SELECT `id` FROM `users` WHERE `username`='$username'";
$sql="SELECT `id` FROM `users` WHERE `email`='$email'";
$result = mysql_query($sql);
$p = mysql_query($sql);
if(mysql_num_rows($result)>='1') {
echo "<script>alert('نام کاربری تکراری می باشد')</script>";
echo "<meta http-equiv='refresh' content='0; URL=newuser.php'>"; exit();
} else if(mysql_num_rows($p)>='1') {
echo"ایمیل تکراری است";
{
else{
$sql="insert into users(username,email,password,repassword)
values('$_POST[username]','$_POST[email]','$_POST[password]','$_POST[repassword]')";
$result = mysql_query($sql);
if($result)
{
echo mysql_affected_rows().'<b> Information Save Success </b>';
} }
mysql_close($con);
?>
http://www.barnamenevis.org/forum/images/statusicon/user_online.gif http://www.barnamenevis.org/forum/images/buttons/report.gif (http://www.barnamenevis.org/forum/report.php?p=1015561) http://www.barnamenevis.org/forum/images/misc/progress.gif http://www.barnamenevis.org/forum/images/buttons/edit.gif (http://www.barnamenevis.org/forum/editpost.php?do=editpost&p=1015561)