اذهب إلى المحتوى

السؤال

نشر

السلام عليكم لدي كود تالي لعمل نسخ احتياطي لقاعدة البيانات 

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

<?php 
include('header.php');
if($_SESSION['rols_user'] != "مدير النظام"){
	
	exit("<div class='alert alert-danger col-md-6 text-center pan1' role='alert' >you don't have permission</div>");
}
	function backup(){
		
		$db_name = "sys_std";
		$db_user = "root";
		$password = "";
		
		
		$filename='database_backup_'.date('Y-m-d-h-i-s').'.sql';
		
		
		$result = exec('mysqldump '.$db_name.' --password='.$password.' --user='.$db_user.' --single-transaction >'.dirname(__FILE__).'/'.$filename,$output);
        
			    if($output==''){
			          
					  echo '<div class="alert alert-danger text-center col-md-6" role="alert">حذث خطأ في النسخ الأحتياطي</div>';

				}else {
					 
							 echo '<div class="alert alert-success text-center col-md-6" role="alert"><h3> تم النسخ الأحتياطي بنجاح';
				             echo '<p><a href="/'.dirname(__FILE__).'/'.$filename.'" target="_blank">اضغط هنا للتحميل ملف النسخ الأحتياطي</a></p></h3>';
							 echo '</div>';
				}
	}
?>
<!-------------------------------------------------------------------------------->	
<!------------------------------------header-------------------------------------->	
<!-------------------------------------------------------------------------------->

</div>
<div class="row">
   <div class="col-md-9 pan1">
			<div class="panel" style="color:#000;">
				<div class="panel-body text-center" style="font-size:14px; padding-left:40px;padding-right:40px;padding-bottom:25px;padding-top:25px;">
				
<?php

$os_name = php_uname('s');

              if($os_name == "Linux"){
				  
				  
				echo '<p><a href="?backup=now"><h3 style="margin-top: 35px;"> لنسخة احتياطية اضغط هنا </h3></a></p>';  
				if(isset($_GET['backup'])){
						if($_GET['backup'] == "now"){
								
                           backup();
					   
						}      
				}
				  
				  
			  }else{
				  
				 echo ' <div style="margin-top:25px;" class="text-center alert alert-danger" role="alert">لا يعمل النسخ الاحتياطي علي الهوست الافتراضي يجب ان يكون استضافة لينكس حقيقية حتي يمكن من تفعيل السكربت النسخ الاحتياطي</div>'; 
				  
			  }
	   


	   
?>
				
				   
				
				</div>
			</div>
		</div>
</div>


<!-------------------------------------------------------------------------------->	
<!------------------------------------Footer-------------------------------------->	
<!-------------------------------------------------------------------------------->

<?php
include('footer.php');
?>

 

 

 

لقطة شاشة 2024-03-16 124413.png

Recommended Posts

  • 0
نشر

الخطأ لديك فى هذا السطر .

بتاريخ منذ ساعة مضت قال AYMEN_1997:
echo '<p><a href="/'.dirname(__FILE__).'/'.$filename.'" target="_blank">اضغط هنا للتحميل ملف النسخ الأحتياطي</a></p></h3>';

 

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

echo '<p><a href="' . substr(__DIR__, strlen($_SERVER['DOCUMENT_ROOT'])) . '/' . $filename . '" target="_blank">اضغط هنا للتحميل ملف النسخ الأحتياطي</a></p></h3>';

 

  • 0
نشر
بتاريخ On 16‏/3‏/2024 at 14:02 قال محمد_عاطف:
echo '<p><a href="' . substr(__DIR__, strlen($_SERVER['DOCUMENT_ROOT'])) . '/' . $filename . '" target="_blank">اضغط هنا للتحميل ملف النسخ الأحتياطي</a></p></h3>';
 

يبدو انك لم تضع السطر الذى قمت بارفاقه لانه مازال يعيد توجيهك الى المسار الكامل للمشروع لذلك من فضلك قم باستبدال هذا السطر بما لديك واخبرنى.

بتاريخ 40 دقائق مضت قال AYMEN_1997:

هادي صفحة لاسباب تتعلق بسرية موقع قمت باخفاء رابط 

 

لقطة شاشة 2024-03-19 161113.png

 

  • 0
نشر
بتاريخ 46 دقائق مضت قال AYMEN_1997:

هل من حل اخواني الكرام

الحل يعتمد على مكان حفظ الملفات لديك وهل تقوم باستخدام اطار عمل لانشاء ال routes ام لا .

وايضا من الممكن انك لا تسمح بتحميل الملفات لديك على الاستضافة عن طريق htaccess مثلا.

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

لانى قد قمت بتجربة الكود الذى ارفقته لك وهو يعمل جيدا لدى لان الملفات موجودة بجوار ملف ال php و ايضا لم اقم بحذر الوصول اليها .

 

  • 0
نشر
بتاريخ 2 ساعة قال محمد_عاطف:

الحل يعتمد على مكان حفظ الملفات لديك وهل تقوم باستخدام اطار عمل لانشاء ال routes ام لا .

وايضا من الممكن انك لا تسمح بتحميل الملفات لديك على الاستضافة عن طريق htaccess مثلا.

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

لانى قد قمت بتجربة الكود الذى ارفقته لك وهو يعمل جيدا لدى لان الملفات موجودة بجوار ملف ال php و ايضا لم اقم بحذر الوصول اليها .

 

انا اعمل بي php  وmysqli وليس اطار عمل لارافيل 

اين اجد ملف htaccess  لكي اعرف استضافة تسمح او لا 

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

بالنسبة لا ستضافة لم اجد ملف htaccess  وملف backup.php بجانبه ينزل ملفات نسخة احتياطه 

كيف اجعل ملف يتحمل عن طريق متصفح هادي مشكلة

  • 0
نشر
بتاريخ 1 ساعة قال AYMEN_1997:

انا اعمل بي php  وmysqli وليس اطار عمل لارافيل 

اين اجد ملف htaccess  لكي اعرف استضافة تسمح او لا 

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

بالنسبة لا ستضافة لم اجد ملف htaccess  وملف backup.php بجانبه ينزل ملفات نسخة احتياطه 

كيف اجعل ملف يتحمل عن طريق متصفح هادي مشكلة

لجعل ملف يتم تحميله يجب الذهاب للمسار الخاص به .

حاول ان تذهب الى عنوان ملف backup.php فى المتصفح و استبدله باسم ملف نسخه احتياطيه لديك على الاستضافه واخبرنى اذا تم تحميله ام لا.

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

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...