بهار آموزش با تخفیف های شگفت انگیز توسینسو بهار آموزش با تخفیف های شگفت انگیز توسینسو
مانده تا پایان تخفیف
مشاهده دوره ها
0

خطای mysqli_fetch_array()

با سلام من توی کدم با این خطا مواجهه شدم هر کاری کردم درست نشد دوستان راهنمایی کنید لطفا

خطا :

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /home/SITE/public_html/site/index.php on line 12

سورس کد :

<?php
session_start();
require_once('config.php');
require_once('telegram.php');
$refID = $_GET['ref'];
$proID = $_GET['pro'];

  function getFromDB($query,$target){
   $con = mysqli_connect("localhost",CFG_DB_USER,CFG_DB_PASS,CFG_DB_DB);
   $con->set_charset("utf8");
   $result = mysqli_query($con,$query);
   $row = mysqli_fetch_array($result, MYSQLI_BOTH);
   return $row[$target];
  }
$proQuery = "SELECT * FROM product WHERE id = $proID";
$proAmount = getFromDB($proQuery,"amount");

$MerchantID = "B3F550AF24BD8F72B8FC"; //Required
$Amount = $proAmount; //Amount will be based on Toman - Required
$Description = 'خرید محصول شماره #'.$proID.' از فروشگاه'; // Required
$Email = $refID; // Optional
$CallbackURL = 'http://maxbot.in/bot/pay/verify.php'; // Required

$_SESSION["proAmount"] = $proAmount;
$_SESSION["proRef"] = $refID;
$_SESSION["proID"] = $proID;


$url = $_SERVER['REQUEST_URI']; //returns the current URL
$parts = explode('/',$url);
$callback = $_SERVER['SERVER_NAME'];
for ($i = 0; $i < count($parts) - 1; $i++) {
 $callback .= $parts[$i] . "/";
}
$callback .= "verify.php";

if(1 == 1){
  $url = 'http://panel.sabzpay.com/api/create/'; // don't change
  $description = $Description;

  $callback .= "?amount=".$Amount;
  $fields = array(
    'amount' => urlencode($Amount),
    'pin' => urlencode($MerchantID),
    'description' => urlencode($description),
    'callback' => urlencode($callback),
  );
  $fields_string = "";
  foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
  rtrim($fields_string, '&');
  $ch = curl_init();
  curl_setopt($ch,CURLOPT_URL, $url);
  curl_setopt($ch,CURLOPT_POST, count($fields));
  curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  $result = curl_exec($ch);
  curl_close($ch);


  if(is_numeric($result)){
    echo '
    <span style="color:red">ارور : '.$result.'</span>';
  } else {
    echo $result;
    header('Location: http://panel.sabzpay.com/startpay/'.$result);
  }
}

پرسیده شده در 1395/10/15 توسط

3 پاسخ

0

نمونه ای که بالا نوشته بودم مثال بودش اما دقیق تر بخوام بنویسم به صورت زیر می باشد. کافیه بعد از

$result = mysqli_query($con,$query);

این عبارت باشه

if (!$result) {
    printf("Error: %s\n", mysqli_error($con));
    exit();
}
پاسخ در 1395/10/16 توسط
0

سلام دوست گرامی این پیامی که sql به شما نشون میده ناشی از خطا داشتن در کوئری و برگشت مقدار false می باشد. بعداز عبارت

mysqli_query()

این دستور رو قرار بده ببینی داستان از چه قرار هست

if (!$check1_res) {
    printf("Error: %s\n", mysqli_error($con));
    exit();
}

راستی بررسی کنید ببینید databse رو براش درست انتخاب و معرفی کردی بعضی موقع ها به خاطر تعریف نشدن درست پایگاه داده این خطا ممکنه رخ بده.

پاسخ در 1395/10/16 توسط
0

کد را توی کدوم قسمت قرار بدم؟

پاسخ در 1395/10/16 توسط

پاسخ شما