الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

التحقق ان نوع المتغير double

بدأه kadmix في 11 يونيو 2012 · 13 رد · 803 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم و رحمة الله

من يصحح لي هذا الكود

http://pastebin.com/XEHmXRcG

واكون له شاكر هههه

اخوكم مبتدئ :happy:

#2

وضح وماذا تريد

1
#3

السلام عليكم

يرجى عليك مراجعة قواعد اللغة وهذا مرادف الكلمات وما تعنية فى اللغة

!= لا يساوى
== يساوى 
|| أو
&& و
---------------------
!= not equal
== equal
|| or
&& and

ويبدوا أنك تريد أن تتأكد أن القيمة المدخلة من المستخدم عبارة عن قيمة عددية كسرية فيصبح الكود على الشكل التالى :

$n=$_POST['n'];
	if(gettype($n)!='double' && gettype($n)!='null'){

	echo "لم تفم بإدخال قيمة صحيحة";
	exit;}

أما إذا كنت تريد أنها أى قيمة بخلاف القيمة الفارغة أو الكسرية فيكون على الشكل :

$n=$_POST['n'];
	if(gettype($n)!='double' || gettype($n)!='null'){

	echo "لم تفم بإدخال قيمة صحيحة";
	exit;}
1

لاتحسبن العلم ينفع وحده مالم يتوج ربه بخلاق

لا إله إلا أنت سبحانك إني كنت من الظالمين

#4

السلام عليكم

مشكورين على الردود

لم يعمل الكود :sad:

ahmedsaoud31 كتب:

السلام عليكم

يرجى عليك مراجعة قواعد اللغة وهذا مرادف الكلمات وما تعنية فى اللغة

!= لا يساوى
== يساوى 
|| أو
&& و
---------------------
!= not equal
== equal
|| or
&& and

ويبدوا أنك تريد أن تتأكد أن القيمة المدخلة من المستخدم عبارة عن قيمة عددية كسرية فيصبح الكود على الشكل التالى :

$n=$_POST['n'];
	if(gettype($n)!='double' && gettype($n)!='null'){

	echo "لم تفم بإدخال قيمة صحيحة";
	exit;}

أما إذا كنت تريد أنها أى قيمة بخلاف القيمة الفارغة أو الكسرية فيكون على الشكل :

$n=$_POST['n'];
	if(gettype($n)!='double' || gettype($n)!='null'){

	echo "لم تفم بإدخال قيمة صحيحة";
	exit;}

الكود المطلوب هو للتحقق أن قيمة المتغير عددية

أرجو المساعدة :wink:

Project.rar

تم تعديل هذه المشاركة بواسطة kadmix في 12 يونيو 2012 في 11:17

#5

جرب هذا

$n=$_POST['n'];
if(gettype($n)!='double' or !isset($n)){

echo "لم تفم بإدخال قيمة صحيحة";
exit;
}
1

M.B.O

Mohamed Bin Othman

إبن المكلا

يابني البشر ماذا فعلتم بالبشر !!

إسـألـنـي

#6

السلام عليكم

$n=$_POST['n'];
if(gettype($n)!='double' or !isset($n)){

echo "لم تفم بإدخال قيمة صحيحة";
exit;
}

blink.gif لأول مرة أعلم أن لغة php تعتمد التعامل مباشراً مع or و and , لهذا ظننت الخطأ فى الكود هو or يبدو أنا هو من عليه مراجعة قواعد اللغة smile.gif

1

لاتحسبن العلم ينفع وحده مالم يتوج ربه بخلاق

لا إله إلا أنت سبحانك إني كنت من الظالمين

#7

is_numeric

is_int

is_float

3
#8
M.B.O كتب:

جرب هذا

$n=$_POST['n'];
if(gettype($n)!='double' or !isset($n)){

echo "لم تفم بإدخال قيمة صحيحة";
exit;
}

مشكور يأخي و جزاك الله خيرا

ولكن

لم يعمل يا أخي

herch كتب:

هذا نا قمت به لكن عندما تكون القيمة فارغة يعمل exit

أنا حاب يكون المتغيير إما عدد أو يكون قيمة فارغة

if(is_numeric ($n)== false )

echo"قم بإدخال قيمة عددية";
exit;}

وشكرا على الردود و على وقتكم

تم تعديل هذه المشاركة بواسطة kadmix في 13 يونيو 2012 في 15:29

#9

المشكلة أنه إذا كانت قيمة n فارغة فنوع المتغير هو string

تم تعديل هذه المشاركة بواسطة kadmix في 13 يونيو 2012 في 16:26

#10

ممكن توضح كيف لم يعمل ؟

وماهو الشي الذي تريد ان تقوم به بالضبط !!

M.B.O

Mohamed Bin Othman

إبن المكلا

يابني البشر ماذا فعلتم بالبشر !!

إسـألـنـي

#11

السلام عليكم

حقيقاً أخى لا أعلم ما تريد تحديداً فمن كلامك أظن أنك تريد أن يطبع للمستخدم المدخلات صحيحة فى حالة كانت المدخلات إما Double أو قيمة فارغة ويطبع المدخلات غير صحية ويقوم بعمل exit فى خلاف ذلك .

قمت بعمل دالة سميتها isDouble تقوم بالتحقق من القيمة المدخلة إليها إن كانت عدد كسرى تعود true وغير ذلك تعود بـ false وهذا هو الكود :

$n=$_POST['n'];
if(isDouble($n) || $n==null){
	echo "القيمة المدخلة صحيحة";
}else{
	echo "القيمة المدخلة غير صحيحة";
	exit;
}

function isDouble($n){
	$dotCount=0;
	if(strlen($n)<3) return false;
	if($n==null) return false;
	if($n[0]=='.'||$n[strlen($n)-1]=='.') return false;
	for($i=0;$i<strlen($n);$i++){
		if($n[$i]=='.') $dotCount++;
		if(!(($n[$i]>='0'&&$n[$i]<='9')||($n[$i]=='.'))) return false;
	}
	if($dotCount!=1) return false;
	return true;
}

أرجو أن يكون هذا ما تريده

1

لاتحسبن العلم ينفع وحده مالم يتوج ربه بخلاق

لا إله إلا أنت سبحانك إني كنت من الظالمين

#12
ahmedsaoud31 كتب:

السلام عليكم

حقيقاً أخى لا أعلم ما تريد تحديداً فمن كلامك أظن أنك تريد أن يطبع للمستخدم المدخلات صحيحة فى حالة كانت المدخلات إما Double أو قيمة فارغة ويطبع المدخلات غير صحية ويقوم بعمل exit فى خلاف ذلك .

قمت بعمل دالة سميتها isDouble تقوم بالتحقق من القيمة المدخلة إليها إن كانت عدد كسرى تعود true وغير ذلك تعود بـ false وهذا هو الكود :

$n=$_POST['n'];
if(isDouble($n) || $n==null){
	echo "القيمة المدخلة صحيحة";
}else{
	echo "القيمة المدخلة غير صحيحة";
	exit;
}

function isDouble($n){
	$dotCount=0;
	if(strlen($n)<3) return false;
	if($n==null) return false;
	if($n[0]=='.'||$n[strlen($n)-1]=='.') return false;
	for($i=0;$i<strlen($n);$i++){
		if($n[$i]=='.') $dotCount++;
		if(!(($n[$i]>='0'&&$n[$i]<='9')||($n[$i]=='.'))) return false;
	}
	if($dotCount!=1) return false;
	return true;
}

أرجو أن يكون هذا ما تريده

مشكور يا أخي

تم بنجاح

فقط

is_double

وليس

isDouble

#13

السلام عليكم

الحمد لله أن تم حل مشكلتك , ولكن أخى isDouble هذه دالة قمت أنا بإنشاءها كما هو واضح من الكود السابق و is_double هذه دالة مضمنة ضمن دوال اللغة مسبقاً .

دمت بخير

لاتحسبن العلم ينفع وحده مالم يتوج ربه بخلاق

لا إله إلا أنت سبحانك إني كنت من الظالمين

#14
ahmedsaoud31 كتب:

السلام عليكم

الحمد لله أن تم حل مشكلتك , ولكن أخى isDouble هذه دالة قمت أنا بإنشاءها كما هو واضح من الكود السابق و is_double هذه دالة مضمنة ضمن دوال اللغة مسبقاً .

دمت بخير

مشكور يا أخي و جازاك الله كل خير

مواضيع مشابهة