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

سوال حول Meta http-equiv في php و sql

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

هلو شباب كيفكم إن شاء الله كلكم بخير ...

عندي مشكلة محيرة و بسيطة بنضر المحترفين في php و sql

عملت موقع يحتوي على لوحة ادارة بدون مشاكل لكن المشكلة هي

if($_REQUEST['delete'] == 'page'){
$delete = mysql_query ("delete from pages where page_id='$gpageid'")or die("delete eror");
		if(isset($delete)){
		die ("
		<div id='f-yallow' align='center'>تم الحذف الصفحة بنجاح</div>
		<meta http-equiv='refresh' content='2; url='' />
		");
}
}

هذا الكود يعني اذا تم الحذف اعمل داي للصفحة و حوله الى نفس الصفحة لكنها لم تتحول الى الإدارة يعني تصير رفرش على

<div id='f-yallow' align='center'>تم الحذف الصفحة بنجاح</div>

ما يضهر محتوي الخ

المشكلة فقط مع الامر delete اما في ابديت او سيليكت مافي مشاكل

مثل اخر

if(isset($_POST['edit']) and $_POST['edit'] == 'pagesbyid'){

$saveedit = mysql_query("update pages set
		page_name = '$page_name',
		page_content = '$page_content',
		page_act = '$page_act',
		page_count = '$page_count',
		page_comm_act = '$page_comm_act'
		where page_id='$page_id'
		") or die (mysql_error());
		if(isset($saveedit)){
		die ("
		<div id='f-yallow' align='center'>تم تعديل بنجاح</div>
		<meta http-equiv='refresh' content='2; url='' />
		");
		}

}

هذا يعمل تعديل على المحتوى و عند الضغط على حفظ يعمل داي و فقط يضهر الديف و بعد ثانيتين ينتقل على لوحة الادارة بدون مشاكل ...

Professional Technology Information

HTML , CSS , PHP , JQuery , Action Script

Photographic Designer & websites Designer : Dinamic Sites & photographic Sites & Flash Sites

IF YOU WANT SEE MY WORKS

VISIT THIS LINK

Prince Designs

#2

جرب هذا الكود

if($_REQUEST['delete'] == 'page'){
$delete = mysql_query ("delete from pages where page_id='$gpageid'")or die("delete eror");
                if(isset($delete)){
					echo "<div id='f-yallow' align='center'>تم الحذف الصفحة بنجاح</div>
							<META http-equiv='refresh' content='25;URL=filename.php'>";
				}
}

M.B.O

Mohamed Bin Othman

إبن المكلا

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

إسـألـنـي

#3

اخي العزيز شكرا لك لكن لم اقل لك ان المشكلة مع echo

اما المشكلة فقط هي مع الدالة die

يعني ما بدي يكون

echo"";

اما بدي يكون

die("");

والمشكلة فقط مع أمر delete في sql

وشكرا ...

Professional Technology Information

HTML , CSS , PHP , JQuery , Action Script

Photographic Designer & websites Designer : Dinamic Sites & photographic Sites & Flash Sites

IF YOU WANT SEE MY WORKS

VISIT THIS LINK

Prince Designs

#4

اذا اردت التأكد من انه تم الحذف بالفعل

فيجب استخدام

mysql_affected_rows()

والتاكد ان القيمه الخارجه اكبر من صفر

اما استخدام isset

فا من الطبيعى ان يعطى القيمه تروو حتى وان لم ينفذ بالكوارى بالشكل الصحيح

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

#5

شكرا يا غالي سيكو يعني تقصد ان استخدم mysql_affected_rows() بدل isset

اخي و ملاحضة هامة انني اتابع دروس فيديو و انني اتابع نفس الشرح و انه يضع اسسيت مع ديليت isset في دالةكوايري ديليت و لا مشاكل عنده . فلماذا عندي تحصل مشكلة ؟

Professional Technology Information

HTML , CSS , PHP , JQuery , Action Script

Photographic Designer & websites Designer : Dinamic Sites & photographic Sites & Flash Sites

IF YOU WANT SEE MY WORKS

VISIT THIS LINK

Prince Designs

#6

السؤال الاهم لماذا تستخدم isset

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

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

نأتى الى الوظيفه mysql_query

الناتخ الخارج منها فى حالة تنفيذ جملة سكول بشكل صحيح اى بدون اخطاء نحويه سوف يعطى القيمه تروو

فل نفترض انك قمت بحذف ايدى غير موجود اساسا سوف يعطى القيمه تروو لان الجمله لم يوجد بيها اخطأ فعدم وجود ايدى بهذا الرقم لا يعتبر خطأ

ولكنه لم يحذف شيئا

فكيف اتكاد من انه حذف بالفعل عن طريق الوظيفه

mysql_affected_rows

فنها تعيد عدد السطور التى تم تعامل معها سوااء بحذف او تحديث او ادخال او ربلييس

بنسبها لسؤالك لماذا لا يظهر محتوى الصفحه

فلا يمكن فالكواد الظاهر امامى يجب ان يظهر شئ ما

فقد يكون هناك خطأ فى النص البرمجى والاخطأ لا تظهر بسبب اعدادات ما فى الخادم

هل قمت بالاطلاع على لووج الاخطاء الموجود فى ملف

error_log

او اكتب الاوامر التاليه لعرض الخطا اذا ما كان الخدام لم يحظر تلك الدوال

error_reporting(E_ALL);

ini_set('display_errors', '1');

#7

يمكن اختصار الكود بما يلي :

if($_REQUEST['delete'] == 'page'){
mysql_query ("delete from pages where page_id='$gpageid'")or die("delete eror");
die ("<meta http-equiv='refresh' content='2; url='' />
<div id='f-yallow' align='center'>تم الحذف الصفحة بنجاح</div>");
}

لا يوجد أخطاء في الكود كما هو واضح , المشكله هي في وضع أوامر بدون أستخدام المنطق

CMS Sfhati , Website Generator


نظام إدارة المحتوى صفحتي ... جربه الآن 


 


small-logo.png

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