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

طريقة تخزين صوره (من لينك)في قاعدة البيانات

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

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

في قاعدة البيانات mysql ؟

للتوضيح يوجد مثال بالمرفقات

عملت صفحه لعدد الزوار بها مربعين

الاول يدخل الزائر فيه اسمه

والثاني أيميله

وتوجد أيضا صوره تبين عدد الزوار ومن اي بلد من موقع flagcounter

وبالاخير زر الارسال

أستطيع تخزين اسم الزائر والايميل بقاعدةالبيانات ولكن المشكله

بالصوره كيف استطيع تخزينها في قاعدة البيانات بستخدام ال php

test.rar

#2

سؤالك غير واضح ممكن توضح اكثر ؟؟

M.B.O

Mohamed Bin Othman

إبن المكلا

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

إسـألـنـي

#3
M.B.O كتب:

سؤالك غير واضح ممكن توضح اكثر ؟؟

مرحب اخي العزيز

لو فتحت صفحة php المرفقه مع الموضوع سوف تجد فورم مع حقلين وصوره وزر أرسال

المهم أحتاج كود برمجي php يساعدني في تخزين الصوره

1337492536671.png

#4

اخي الفاضل

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

وشكرا

#5
Saleh.Al-Thiyab كتب:

اخي الفاضل

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

وشكرا

اجل لقد وضعتها بالمرفقات مع الرد

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

PHP Save Images Using cURL

Some hosts disabled the ini setting allow_url_fopen. This also means that the ability to easily grab images by calling imagecreatefromjpeg($img) where $img is a url for an external image does not work.

This is a shame as this technique is pretty easy

..




PHP:

$remote_img = 'http://www.somwhere.com/images/image.jpg';
$img = imagecreatefromjpeg($remote_img);
$path = 'images/';
imagejpeg($img, $path);




However I was tearing my hair out trying to get a product feed integration system to work on a host that has disabled the allow_url_fopen mechanism which meant the above wouldnt work.

Thankfully cURL was still working. So here is the function I made for grabbing and saving an image using cURL instead:




PHP:

//Alternative Image Saving Using cURL seeing as allow_url_fopen is disabled - bummer
function save_image($img,$fullpath){
$ch = curl_init ($img);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_BINARYTRANSFER,1);
$rawdata=curl_exec($ch);
curl_close ($ch);
if(file_exists($fullpath)){
unlink($fullpath);
}
$fp = fopen($fullpath,'x');
fwrite($fp, $rawdata);
fclose($fp);
}





mysite.rar

#6

استخدم الدالة النسخ

ضع رابط الصور في ابيوت مخفي

عند الظغط على زر الارسال استقبل الفورم واخذ المتغير الذي الي يحمل امتداد الصورة

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

تم تعديل هذه المشاركة بواسطة legendq في 21 مايو 2012 في 15:54

#7
legendq كتب:

استخدم الدالة النسخ

ضع رابط الصور في ابيوت مخفي

عند الظغط على زر الارسال استقبل الفورم واخذ المتغير الذي الي يحمل امتداد الصورة

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

في البدايه شكرا اخي الكرام على المداخله وشكرا ايضا لكل الاعضاء

انا ما زلت مبتدأ في عالم البي اتش بي وللأسف لم أفم شي مما ذكرت

واتمنى منك اخي الكريم ان توضح بأمثله وكودات مكتوبه ليسهل علي الفهم

#8
أسير الحياه كتب:

في البدايه شكرا اخي الكرام على المداخله وشكرا ايضا لكل الاعضاء

انا ما زلت مبتدأ في عالم البي اتش بي وللأسف لم أفم شي مما ذكرت

واتمنى منك اخي الكريم ان توضح بأمثله وكودات مكتوبه ليسهل علي الفهم

تفضل شوف ها الدرس

ممكن يفيدك

درس الثاني

تم تعديل هذه المشاركة بواسطة legendq في 22 مايو 2012 في 00:10

#9
legendq كتب:

تفضل شوف ها الدرس

ممكن يفيدك

درس الثاني

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

تمنيت لو كانت المشاركه بالخطوات مكتوبه مثلا

1- ماذا اضيف او احذف في قاعدة البيانات؟

2- هل كود فورم ال html مكتوب بطريقة صحيحه لكي تستقبل قاعدة البيانات المعلومات المرسله؟

3- ماذا يجب ان اغير او اضيف في كود php لكي تتمكن قاعدة البيانات من أستلام البيانات المرسله بشكل سليم؟

وانت قد ذكرت فيما سبق يجب ان استخدم دالة copy كيف ممكن استخدمها وماهي طريقة كتابة كود هذي الداله؟

وشكرا جزيلا لكل من شاركني ولكل من حاول ان يساعدني..

#10

اخي هل الرابط متغير ام الرابط ثابت

رابط الصورة اقصد

#11
legendq كتب:

اخي هل الرابط متغير ام الرابط ثابت

رابط الصورة اقصد

ثاااابت

#12

تفضل

وغير ما يلزم

وحاول

قراءة الكود

<?php
echo '<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">';
if(isset($_POST['insert']) && $_POST['insert'] == " insert "){

	// بعد التحقق من تعبئة النموذج
	$img  = "http://s10.flagcounter.com/count/88/bg_FFFFFF/txt_000000/border_CCCCCC/columns_2/maxflags_12/viewers_0/labels_0/pageviews_0/flags_0/"; // رابط الصورة
	$code = "ASAJGYUGFDERY5465S74EW4F7ER87ER54efer87fe8er4g8erghvnfgadgertyjyu"; //كود 
	$rand = rand("000000000,999999999");
	$code = str_shuffle($code.$rand); // كود يتغير مع كل تحديث
	$code = substr($code,6,14);       // قص الكود
	$type = ".png"; // امتداد الصورة او الصيغة
    $dir  = "img/"; // مجلد الصور  
    // تحقق من المجلد الصور مجود او غير موجود 
    if(!file_exists($dir)){
    	mkdir($dir,"777"); // اذا لم يكن موجود سوف يقوم بعمل مجلد 
    }  

	//الان نحن في الاهم وهو نسخ الصورة باستخدام الدالة نسح 
	/**
	 * الدالة تاخذ معاملين اساسين
	 * الاول هو رابط الصورة
	 * والثاني : هو اسم الصور ومكان الحفظ بااضافة الي امتدادة
	 * 
	 */
	 //                1          2    
	$copy_img =  copy($img,$dir.$code.$type);
	if(isset($copy_img) && $copy_img == TRUE){
		echo "<h2> تم رفع  الصورة</h2>";
	}


}
?>
<HTML>
<HEAD>
<TITLE>test</TITLE>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1256">
</HEAD>


    <form method="post" name="form1" action="" enctype="multipart/form-data">

	      <table align="left">
        <tr valign="baseline">
          <td nowrap align="left">Name:</td>
          <td><input name="nick_name" type="text" id="nick_name" value="" size="28"></td>
          </tr>
        <tr valign="baseline">
          <td nowrap align="left">E-mail adress:</td>
          <td><input name="email" type="text" id="email" value="" size="28"></td>
          </tr>
		  <tr valign="baseline">
		  <td nowrap align="left"></td>
		  <input name="allli" value="" type="hidden" value="" />
          <td><img name="ipimage" id="ipimage" src="http://s10.flagcounter.com/count/88/bg_FFFFFF/txt_000000/border_CCCCCC/columns_2/maxflags_12/viewers_0/labels_0/pageviews_0/flags_0/" border="0" width="190" height="100" alt=""  /></td>
          </tr>
		  <tr valign="baseline">
		  <td nowrap align="left"></td>
		  <td><input name="insert" type="submit" class="box" id="insert" value=" insert "></td>
		  </tr>
		          </table>

		  </form>


</HTML>

إن شاء الله اكون وفقت في في شرح الكود

رفعة الصفحة مع الملحقات

test.rar

#13
legendq كتب:

تفضل

وغير ما يلزم

وحاول

قراءة الكود

<?php
echo '<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">';
if(isset($_POST['insert']) && $_POST['insert'] == " insert "){

	// بعد التحقق من تعبئة النموذج
	$img  = "http://s10.flagcounter.com/count/88/bg_FFFFFF/txt_000000/border_CCCCCC/columns_2/maxflags_12/viewers_0/labels_0/pageviews_0/flags_0/"; // رابط الصورة
	$code = "ASAJGYUGFDERY5465S74EW4F7ER87ER54efer87fe8er4g8erghvnfgadgertyjyu"; //كود 
	$rand = rand("000000000,999999999");
	$code = str_shuffle($code.$rand); // كود يتغير مع كل تحديث
	$code = substr($code,6,14);       // قص الكود
	$type = ".png"; // امتداد الصورة او الصيغة
    $dir  = "img/"; // مجلد الصور  
    // تحقق من المجلد الصور مجود او غير موجود 
    if(!file_exists($dir)){
    	mkdir($dir,"777"); // اذا لم يكن موجود سوف يقوم بعمل مجلد 
    }  

	//الان نحن في الاهم وهو نسخ الصورة باستخدام الدالة نسح 
	/**
	 * الدالة تاخذ معاملين اساسين
	 * الاول هو رابط الصورة
	 * والثاني : هو اسم الصور ومكان الحفظ بااضافة الي امتدادة
	 * 
	 */
	 //                1          2    
	$copy_img =  copy($img,$dir.$code.$type);
	if(isset($copy_img) && $copy_img == TRUE){
		echo "<h2> تم رفع  الصورة</h2>";
	}


}
?>
<HTML>
<HEAD>
<TITLE>test</TITLE>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1256">
</HEAD>


    <form method="post" name="form1" action="" enctype="multipart/form-data">

	      <table align="left">
        <tr valign="baseline">
          <td nowrap align="left">Name:</td>
          <td><input name="nick_name" type="text" id="nick_name" value="" size="28"></td>
          </tr>
        <tr valign="baseline">
          <td nowrap align="left">E-mail adress:</td>
          <td><input name="email" type="text" id="email" value="" size="28"></td>
          </tr>
		  <tr valign="baseline">
		  <td nowrap align="left"></td>
		  <input name="allli" value="" type="hidden" value="" />
          <td><img name="ipimage" id="ipimage" src="http://s10.flagcounter.com/count/88/bg_FFFFFF/txt_000000/border_CCCCCC/columns_2/maxflags_12/viewers_0/labels_0/pageviews_0/flags_0/" border="0" width="190" height="100" alt=""  /></td>
          </tr>
		  <tr valign="baseline">
		  <td nowrap align="left"></td>
		  <td><input name="insert" type="submit" class="box" id="insert" value=" insert "></td>
		  </tr>
		          </table>

		  </form>


</HTML>

إن شاء الله اكون وفقت في في شرح الكود

رفعة الصفحة مع الملحقات

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

لكن بالنسبه لتخزين الصوره في قاعدة البيانات mysql كيف ممكن ان اخزنها؟

#14
أسير الحياه كتب:

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

لكن بالنسبه لتخزين الصوره في قاعدة البيانات mysql كيف ممكن ان اخزنها؟

عفوان

غير مايلزم

في جملة الادخال الي فاعدة البينات

test.rar

#15
legendq كتب:

عفوان

غير مايلزم

في جملة الادخال الي فاعدة البينات

ظهر لدي هذا الخطأ



Warning: rand() expects exactly 2 parameters, 1 given in C:\xampp\htdocs\test\test.php on line 46
Unknown column 'img' in 'field list'


ووضعت عملي بالمرفقات

test.rar

#16

test.php

<?php require_once('Connections/config.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
{
  if (PHP_VERSION < 6) {
    $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
  }

  $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

  switch ($theType) {
    case "text":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;    
    case "long":
    case "int":
      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case "double":
      $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
      break;
    case "date":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "defined":
      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
      break;
  }
  return $theValue;
}
}

$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
  $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}



if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {

	// بعد التحقق من تعبئة النموذج
	$img  = "http://s10.flagcounter.com/count/88/bg_FFFFFF/txt_000000/border_CCCCCC/columns_2/maxflags_12/viewers_0/labels_0/pageviews_0/flags_0/"; // رابط الصورة
	$code = "ASAJGYUGFDERY5465S74EW4F7ER87ER54efer87fe8er4g8erghvnfgadgertyjyu"; //كود 
	$rand = rand(0, 9000000000);
	$code = str_shuffle($code.$rand); // كود يتغير مع كل تحديث
	$code = substr($code,6,14);       // قص الكود
	$type = ".png"; // امتداد الصورة او الصيغة
    $dir  = "img/"; // مجلد الصور  
	    // تحقق من المجلد الصور مجود او غير موجود 
    if(!file_exists($dir)){
    	mkdir($dir,"777"); // اذا لم يكن موجود سوف يقوم بعمل مجلد 
    }  
	$copy_img =  copy($img,$dir.$code.$type);

  $insertSQL = sprintf("INSERT INTO visitor (name, email, image) VALUES (%s, %s, ".$dir.$code.$type.")",
                       GetSQLValueString($_POST['name'], "text"),
                       GetSQLValueString($_POST['email'], "text"));

  mysql_select_db($database_config, $config);
  $Result1 = mysql_query($insertSQL, $config) or die(mysql_error());

  $insertGoTo = "done.php";
  if (isset($_SERVER['QUERY_STRING'])) {
    $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
    $insertGoTo .= $_SERVER['QUERY_STRING'];
  }
  header(sprintf("Location: %s", $insertGoTo));
}

mysql_select_db($database_config, $config);
$query_mysite = "SELECT id, name, email FROM visitor";
$mysite = mysql_query($query_mysite, $config) or die(mysql_error());
$row_mysite = mysql_fetch_assoc($mysite);
$totalRows_mysite = mysql_num_rows($mysite);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Visitor</title>
</head>

<body>
<p> </p>
<p> </p>
<form action="<?php echo $editFormAction; ?>" method="post" name="form1" id="form1">
  <table align="center">
    <tr valign="baseline">
      <td nowrap="nowrap" align="right">Name:</td>
      <td><input type="text" name="name" value="" size="32" /></td>
    </tr>
    <tr valign="baseline">
      <td nowrap="nowrap" align="right">Email:</td>
      <td><input type="text" name="email" value="" size="32" /></td>
    </tr>
        <tr valign="baseline">
      <td nowrap="nowrap" align="right"></td>
      <td><img name="images" id="images" src="http://s10.flagcounter.com/count/88/bg_FFFFFF/txt_000000/border_CCCCCC/columns_2/maxflags_12/viewers_0/labels_0/pageviews_0/flags_0/" border="0" width="228" height="125" alt="Visitor" /></td>
    </tr>
    <tr valign="baseline">
      <td nowrap="nowrap" align="right"> </td>
      <td><input type="submit" value="Insert record" /></td>
    </tr>
  </table>
  <input type="hidden" name="MM_insert" value="form1" />
</form>
<p> </p>
</body>
</html>
<?php
mysql_free_result($mysite);
?>
#17
Saleh.Al-Thiyab كتب:

test.php

<?php require_once('Connections/config.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
{
  if (PHP_VERSION < 6) {
    $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
  }

  $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

  switch ($theType) {
    case "text":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;    
    case "long":
    case "int":
      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case "double":
      $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
      break;
    case "date":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "defined":
      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
      break;
  }
  return $theValue;
}
}

$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
  $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}



if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {

	// بعد التحقق من تعبئة النموذج
	$img  = "http://s10.flagcounter.com/count/88/bg_FFFFFF/txt_000000/border_CCCCCC/columns_2/maxflags_12/viewers_0/labels_0/pageviews_0/flags_0/"; // رابط الصورة
	$code = "ASAJGYUGFDERY5465S74EW4F7ER87ER54efer87fe8er4g8erghvnfgadgertyjyu"; //كود 
	$rand = rand(0, 9000000000);
	$code = str_shuffle($code.$rand); // كود يتغير مع كل تحديث
	$code = substr($code,6,14);       // قص الكود
	$type = ".png"; // امتداد الصورة او الصيغة
    $dir  = "img/"; // مجلد الصور  
	    // تحقق من المجلد الصور مجود او غير موجود 
    if(!file_exists($dir)){
    	mkdir($dir,"777"); // اذا لم يكن موجود سوف يقوم بعمل مجلد 
    }  
	$copy_img =  copy($img,$dir.$code.$type);

  $insertSQL = sprintf("INSERT INTO visitor (name, email, image) VALUES (%s, %s, ".$dir.$code.$type.")",
                       GetSQLValueString($_POST['name'], "text"),
                       GetSQLValueString($_POST['email'], "text"));

  mysql_select_db($database_config, $config);
  $Result1 = mysql_query($insertSQL, $config) or die(mysql_error());

  $insertGoTo = "done.php";
  if (isset($_SERVER['QUERY_STRING'])) {
    $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
    $insertGoTo .= $_SERVER['QUERY_STRING'];
  }
  header(sprintf("Location: %s", $insertGoTo));
}

mysql_select_db($database_config, $config);
$query_mysite = "SELECT id, name, email FROM visitor";
$mysite = mysql_query($query_mysite, $config) or die(mysql_error());
$row_mysite = mysql_fetch_assoc($mysite);
$totalRows_mysite = mysql_num_rows($mysite);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Visitor</title>
</head>

<body>
<p> </p>
<p> </p>
<form action="<?php echo $editFormAction; ?>" method="post" name="form1" id="form1">
  <table align="center">
    <tr valign="baseline">
      <td nowrap="nowrap" align="right">Name:</td>
      <td><input type="text" name="name" value="" size="32" /></td>
    </tr>
    <tr valign="baseline">
      <td nowrap="nowrap" align="right">Email:</td>
      <td><input type="text" name="email" value="" size="32" /></td>
    </tr>
        <tr valign="baseline">
      <td nowrap="nowrap" align="right"></td>
      <td><img name="images" id="images" src="http://s10.flagcounter.com/count/88/bg_FFFFFF/txt_000000/border_CCCCCC/columns_2/maxflags_12/viewers_0/labels_0/pageviews_0/flags_0/" border="0" width="228" height="125" alt="Visitor" /></td>
    </tr>
    <tr valign="baseline">
      <td nowrap="nowrap" align="right"> </td>
      <td><input type="submit" value="Insert record" /></td>
    </tr>
  </table>
  <input type="hidden" name="MM_insert" value="form1" />
</form>
<p> </p>
</body>
</html>
<?php
mysql_free_result($mysite);
?>

ظهر هذا الخطا

Unknown column 'img' in 'field list'

#18

تم التعديل

في جملة الادخال s%

لا بد من وضعها في سنقل كود

مثال 's%'

test.rar

#19

صباح الخير

وربي مبدعين يا اخوان legendq و Saleh.Al-Thiyab

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

والحين أحاول " أستعراض" البيانات المسجله بقاعدة البيانات في صفحه

شكرا جزيلا لكم

:)

#20
أسير الحياه كتب:

صباح الخير

وربي مبدعين يا اخوان legendq و Saleh.Al-Thiyab

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

والحين أحاول " أستعراض" البيانات المسجله بقاعدة البيانات في صفحه

شكرا جزيلا لكم

:)

العفو اخي أسير وانا بالخدمة متى ما اردت .. وشكراً

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…