انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


ارائه ۲۴٫۱۰ اوبونتو منتشر شد 🎉

نویسنده موضوع: يه مسلمونPHP كار مشكل من را حل كنه  (دفعات بازدید: 10232 بار)

0 کاربر و 3 مهمان درحال مشاهده موضوع.

آفلاین firethumbs

  • Full Member
  • *
  • ارسال: 173
يه مسلمونPHP كار مشكل من را حل كنه
« : 16 آذر 1388، 06:06 ب‌ظ »
دوستان سلام
من سر يك پروژه دانشگاهي مشكل دارم. يك برنامه به زبان پي اچ پي دارم مي نويسم كه يه جائي از آن ايراد داره خواهش مي كنم راهنمائي كنيد. خلاصه برنامه اينه كه مي خوام به بانك ماي اس كيو ال وصل بشم و عمل درج و حذف و انتخاب و بروز رساني را انجام بدم منتها مي خوام بوسيله يك كلاس اينكار را انجام بدم يعني query را بدم به توابع عضو اون كلاس و از اون كلاس جواب بگيرم. اينم برنامه مشكل دار من .
اين همون كلاسيه كه گفتم:
<?php

class DataAccess{
private $pass="123";
private $user="root";
private $server="localhost";
private $port="3306";
private $database;
private $mysqli;
private $result;

//////////////////////////////////////////////////////
function _construct($value){
$this->database=$value;
}//end of constructor-

////////////////////////////////////////////////////
function connect(){
$this->mysqli=new mysqli($this->server,$this->user,$this->pass,$this->database);
if($this->mysqli->errno){
printf("Unable to connect to the database:
%s",$this->mysqli->error);
exit();
}//end of if statement
}//end of connect


////////////////////////////////////////////
function hello(){
echo "hello";
}//end of hello-

//////////////////////////////////
function disconnect(){
$mysqli.close();
}//end of disconnect

///////////////////////////////////////////////////////////
function select_query($valu){

$this->result = $this->mysqli->query($valu, MYSQLI_STORE_RESULT);
// Iterate through the result set
[u]while ($row = $this->result->fetch_array(MYSQLI_NUM))[/u]
سطر بالا سطريه كه خطا روي آن گرفته شده است.
{
$sku = $row[0];
$name = $row[1];
$price = $row[2];
echo "($sku) $name: $price
";
}
}//end of excute_query function
///////////////////////////////////////////////////////
function executeQuery($val){
$this->result=$this->mysqli->query($val,MYSQLI_STORE_RESULT);
echo "query has been excute";

}// end of excuteQuery function.

}//end of class
?>

اينم فايلي است كه شئي از اين كلاس ايجاد و تابع عضو را صدا مي زنم
<?php
//passenger.php
include "DataAccess.php";

$dal=new DataAccess("bus");
$dal->connect();
$dal->hello();

$query = "select * from passenger ";

$dal->select_query($query);

//Fatal error: Call to a member function fetch_array() on a non-object in /opt/lampp/htdocs/DataAccess.php on line 42
/*
$mysqli=new mysqli("localhost","root","123","bus");
if($mysqli->errno){
printf("Unable to connect to the database:
%s",$mysqli->error);
exit();
}

$query = "SELECT * from passenger";
$result = $mysqli->query($query, MYSQLI_STORE_RESULT);
// Iterate through the result set
while(list($ID, $Fname, $Lname,$codemelli,$email) = $result->fetch_row())
printf("(%s) %s   %s: %s %s
", $ID, $Fname, $Lname,$codemelli,$email);

*/
?>

اينم خطائي كه مي ده
Fatal error: Call to a member function fetch_array() on a non-object in /opt/lampp/htdocs/DataAccess.php on line 42

يه سوال ديگه هم دارم و اون اينكه چطور مي تونم نتيجه يك select  را در يك چك ليست يا Drop down بياورم. اگه بخوام در پروژه دقيتر بگويم مي خواهم نتيجه يك select از جدول شهرها در ديتابيس را داخل يك drop down listيا optional listنمايش دهم.
ممنون
« آخرین ویرایش: 19 آذر 1388، 01:42 ق‌ظ توسط firethumbs »

آفلاین firethumbs

  • Full Member
  • *
  • ارسال: 173
پاسخ به: اشكال در يك برنامه در PHP
« پاسخ #1 : 19 آذر 1388، 12:58 ق‌ظ »
بابا هيشكي نيست مرا راهنمائي كنه. بخدا ثواب داره  ](*,) ](*,) ](*,) ](*,)

آفلاین Moshtaghi

  • Full Member
  • *
  • ارسال: 123
  • جنسیت : پسر
    • وبلاگ شخصی مهدی مشتاقی
پاسخ به: يه مسلمونPHP كار مشكل من را حل كنه
« پاسخ #2 : 19 آذر 1388، 02:08 ق‌ظ »
جواب سوال اول رو نمی‌دونم (راستش رو بخوای اصلاً حال خوندن نداشتم)
ولی جواب دومی اینه
<?php $result Query Morede nazar
?>
<select> <?php
while($row mysql_fetch_object($result))
      { 
?>

  <option value="<?php echo $row->FieldName ?>"> <?php echo $row->FieldName ?> </option>
    <?php  ?>
</select>

شرمنده اگر دقیق نیست! خیلی خوابم میاد (یکی نیست بگه مجبوری جواب بدی)

آفلاین firethumbs

  • Full Member
  • *
  • ارسال: 173
پاسخ به: يه مسلمونPHP كار مشكل من را حل كنه
« پاسخ #3 : 19 آذر 1388، 02:11 ق‌ظ »
جواب سوال اول رو نمی‌دونم (راستش رو بخوای اصلاً حال خوندن نداشتم)
ولی جواب دومی اینه
<?php $result Query Morede nazar
?>
<select> <?php
while($row mysql_fetch_object($result))
      { 
?>

  <option value="<?php echo $row->FieldName ?>"> <?php echo $row->FieldName ?> </option>
    <?php  ?>
</select>

شرمنده اگر دقیق نیست! خیلی خوابم میاد (یکی نیست بگه مجبوری جواب بدی)
بازم مرامتو عشقه. مي دوني چند روزه اين سوال را گذاشتم اينجا؟ حالا عجله اي نيست اگه وقت كردي برام دقيقشو بذار. سوال اول هم ممنون مي شم اگه (البته اگه بتوني) جواب بدي.
ممنونم

آفلاین جادی

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 1610
    • در دفاع از آزادی بیان
پاسخ به: يه مسلمونPHP كار مشكل من را حل كنه
« پاسخ #4 : 19 آذر 1388، 05:38 ب‌ظ »
می خوای برات پیش خدای مسلمون ها دعا کنه یا از طریق دانش پی اچ پی برنامه ات رو بخونه و نظر بده؟ اگر اولیش که امیدوارم کسی پیدا بشه و برات دعا کنه ولی اگر دومی، نیازی به ذکر مذهب نیست (: فکر کنم هر خداناباور، آزاد اندیش یا مسیحی یا هر کس دیگه هم بتونه راهنماییت کنه (:
آزادی کیبورد حق هر انسان است - جادی

آفلاین yakoza

  • Jr. Member
  • *
  • ارسال: 83
پاسخ به: يه مسلمونPHP كار مشكل من را حل كنه
« پاسخ #5 : 19 آذر 1388، 05:45 ب‌ظ »
اگه سوالتون رو تو یه انجمن تخصصی میپرسیدید زودتر به جواب میرسیدید

http://forum.iranphp.org

آفلاین parsibox

  • Hero Member
  • *
  • ارسال: 777
  • جنسیت : پسر
  • آچار فرانسه
    • سایت شخصی محسن داوری
پاسخ به: يه مسلمونPHP كار مشكل من را حل كنه
« پاسخ #6 : 19 آذر 1388، 05:54 ب‌ظ »
این یک نمونه از سلکت با یک کلاس دیگه هست
function sql_query($query = "")

{

unset($this->q_result);

if($query != ""){

$this->q_result = @mysql_query($query, $this->db_id);

}

if($this->q_result){

unset($this->row[$this->q_result]);

unset($this->rowset[$this->q_result]);

return $this->q_result;

}

else{

$this->show_error($this->sql_error() , $query);

return false;

}

}

function sql_fetchrow($query_id = 0)

{

if(!$query_id)

$query_id = $this->q_result;





if($query_id){

$this->row[$query_id] = @mysql_fetch_array($query_id);

return $this->row[$query_id];

}

else

return false;

}





function sql_fetchrowset($query_id = 0)

{

if(!$query_id)

$query_id = $this->q_result;





if($query_id){

unset($this->rowset[$query_id]);

unset($this->row[$query_id]);

while($this->rowset[$query_id] = @mysql_fetch_array($query_id))

{

$result[] = $this->rowset[$query_id];

}

return $result;

}

else

return false;

}




http://forum.ubuntu.ir/index.php/topic,12830.0.html
http://forum.ubuntu.ir/index.php/topic,12928.new.htm
http://forum.ubuntu.ir/index.php/topic,12151.0.html
توجه : کلیه ی کاربران لینوکس در اصفهان که متقاضی شارژ یا راه اندازی ADSL پیشگامان یا صبانت هستند میتوانند از طریق ما 5% تخفیف بگیرند

آفلاین firethumbs

  • Full Member
  • *
  • ارسال: 173
پاسخ به: يه مسلمونPHP كار مشكل من را حل كنه
« پاسخ #7 : 20 آذر 1388، 12:45 ق‌ظ »
می خوای برات پیش خدای مسلمون ها دعا کنه یا از طریق دانش پی اچ پی برنامه ات رو بخونه و نظر بده؟ اگر اولیش که امیدوارم کسی پیدا بشه و برات دعا کنه ولی اگر دومی، نیازی به ذکر مذهب نیست (: فکر کنم هر خداناباور، آزاد اندیش یا مسیحی یا هر کس دیگه هم بتونه راهنماییت کنه (:
سلام
هر دوتاشه عزيز. اگه شما ميتوني اول برام دعا كن و بعد راهنمائي كنيد.
ممنون

آفلاین firethumbs

  • Full Member
  • *
  • ارسال: 173
پاسخ به: يه مسلمونPHP كار مشكل من را حل كنه
« پاسخ #8 : 20 آذر 1388، 12:47 ق‌ظ »
اگه سوالتون رو تو یه انجمن تخصصی میپرسیدید زودتر به جواب میرسیدید

http://forum.iranphp.org
سلام
بله خودم مي دونم ولي متاسفانه چند وقتي است كه عضو شده ام ولي برام ايميل فعال سازي نيومده به وبمستر هم هرچي ايميل مي زنم انگار نه انگار. شما راه ديگه اي سراغ نداريد؟؟ ](*,) ](*,) ](*,) ](*,)

آفلاین firethumbs

  • Full Member
  • *
  • ارسال: 173
پاسخ به: يه مسلمونPHP كار مشكل من را حل كنه
« پاسخ #9 : 20 آذر 1388، 12:50 ق‌ظ »
این یک نمونه از سلکت با یک کلاس دیگه هست
function sql_query($query = "")

{

unset($this->q_result);

if($query != ""){

$this->q_result = @mysql_query($query, $this->db_id);

}

if($this->q_result){

unset($this->row[$this->q_result]);

unset($this->rowset[$this->q_result]);

return $this->q_result;

}

else{

$this->show_error($this->sql_error() , $query);

return false;

}

}

function sql_fetchrow($query_id = 0)

{

if(!$query_id)

$query_id = $this->q_result;





if($query_id){

$this->row[$query_id] = @mysql_fetch_array($query_id);

return $this->row[$query_id];

}

else

return false;

}





function sql_fetchrowset($query_id = 0)

{

if(!$query_id)

$query_id = $this->q_result;





if($query_id){

unset($this->rowset[$query_id]);

unset($this->row[$query_id]);

while($this->rowset[$query_id] = @mysql_fetch_array($query_id))

{

$result[] = $this->rowset[$query_id];

}

return $result;

}

else

return false;

}




دوست عزيز خيلي ممنون از لطفت ولي من از اين كدها سر در نمي آورم و چون كه پروژه دانشگاهي هست بايد حتما ازش سر در بياورم كه بتونم پروژه را تموم كنم و تحويل بدم. نمي توني روي كدهاي خودم اشكالاتم را بگيري؟
ممنون

آفلاین sabersoft

  • Jr. Member
  • *
  • ارسال: 31
پاسخ به: يه مسلمونPHP كار مشكل من را حل كنه
« پاسخ #10 : 20 آذر 1388، 02:25 ب‌ظ »
سلام دوست عزیز
اون خط از کدت رو که \ر رنگ کردی و گفتی خطا می ده دقت کن .
عبارت MYSQLI_NUM چه معنی می ده؟ شما باید داخل دستور mysql_fetch_array یک مقدار بازگشت داده شده از نوع result مربوط به mysql را قرار بدید برای مثال به کد زیر دقت کنید:
$r=mysql_query("select * from users");
while($row=mysql_fetch_array($r)){
echo $row[0];
}

آفلاین firethumbs

  • Full Member
  • *
  • ارسال: 173
پاسخ به: يه مسلمونPHP كار مشكل من را حل كنه
« پاسخ #11 : 22 آذر 1388، 10:07 ب‌ظ »
سلام دوست عزیز
اون خط از کدت رو که \ر رنگ کردی و گفتی خطا می ده دقت کن .
عبارت MYSQLI_NUM چه معنی می ده؟ شما باید داخل دستور mysql_fetch_array یک مقدار بازگشت داده شده از نوع result مربوط به mysql را قرار بدید برای مثال به کد زیر دقت کنید:
$r=mysql_query("select * from users");
while($row=mysql_fetch_array($r)){
echo $row[0];
}
دوست عزیز سلام
خیلی ممنون از توجهت. این چیزی که من نوشتن مثالی است از یک پی دی اف که دارم می خونم. منتها اون در قالب کلاس این چیز ها را ننوشته است. پروژه ی بنده طوری است که باید این اعمال را در قالب کلاس بنویسم. حالا شما اطمینان داری که اگه این خط را به این شیوه اصلاح کنم درست می شه؟؟
یه سوال دیگه چطور می شه یه مقدار را از یک option list گرفت؟ می تونی برام یه مثال بگذاری؟
بازهم از لطفت ممنون
« آخرین ویرایش: 22 آذر 1388، 11:26 ب‌ظ توسط firethumbs »

آفلاین sabersoft

  • Jr. Member
  • *
  • ارسال: 31
پاسخ به: يه مسلمونPHP كار مشكل من را حل كنه
« پاسخ #12 : 23 آذر 1388، 08:01 ق‌ظ »
سلام
کد کلاسی را که گذاشتی من با اطلاعات خودم (شاید اشتباه هم بکنم) خطا را در آنجا می بینم می تونی یه تست ساده انجام بدی.
برای استفاده از option list یا همون تگ select به مثال زیر دقت کن :
<?php
if(isset($_POST['choice']))
echo 
'Your Selection: '.$_POST['choice'].'<br />';
?>

<form action="" method="post">
<select name="choice" size="0">
<?php
for($i=0;$i<11;$i++)
echo <<<OPT
<option value="$i">Choice $i</option>
OPT;
?>

</select>
<input type="submit" value="Send" />
</form>
اگه مشکلی یا سوالی بود در خدمتم.
« آخرین ویرایش: 23 آذر 1388، 08:05 ق‌ظ توسط sabersoft »

آفلاین firethumbs

  • Full Member
  • *
  • ارسال: 173
پاسخ به: يه مسلمونPHP كار مشكل من را حل كنه
« پاسخ #13 : 25 آذر 1388، 12:12 ق‌ظ »
سلام
کد کلاسی را که گذاشتی من با اطلاعات خودم (شاید اشتباه هم بکنم) خطا را در آنجا می بینم می تونی یه تست ساده انجام بدی.
برای استفاده از option list یا همون تگ select به مثال زیر دقت کن :
<?php
if(isset($_POST['choice']))
echo 
'Your Selection: '.$_POST['choice'].'<br />';
?>

<form action="" method="post">
<select name="choice" size="0">
<?php
for($i=0;$i<11;$i++)
echo <<<OPT
<option value="$i">Choice $i</option>
OPT;
?>

</select>
<input type="submit" value="Send" />
</form>
اگه مشکلی یا سوالی بود در خدمتم.
سلام
خدمت از ماست. امیدوارم بتونم روزی یه مشکلی از شما دوستان حل کنم.
آقا خیلی ممنون این مشکل کلاسم حل شد. نمی دونم چرا اینقدر بی دقت هستم. برای سازنده باید دو تا آندرلاین می گذاشتم یکی گذاشته بودم. به هر حال از لطفتون ممنون.
sabersoftجان این تیکه کد بالا را چیکارش کنم. نمی فهم چیکار کردی.مخصوصا این دو خط اولی را و echo <<<OPT و OPT اینا چی هستند کارشون چیه؟
باز هم چند تا مشکل دیگه دارم حالا فعلا نمی دونم چرا اطلاعات دیتابیس که فارسی است وقتی نمایش می دم علامت سوال میاره؟
چکارش کنم؟ یکی از دوستان یه تیکه تگ داد که بهش اضافه کنم ولی درست نشد.
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
دوم اینکه موقع اینسرت هم مشکل دارم و این پیغام را می گیرم
Column count doesn't match value count at row 1

از لطف بدون چشم داشت دوستان سپاسگزارم و همینطور شرمنده.:) :oops:
« آخرین ویرایش: 25 آذر 1388، 12:22 ق‌ظ توسط firethumbs »

آفلاین sabersoft

  • Jr. Member
  • *
  • ارسال: 31
پاسخ به: يه مسلمونPHP كار مشكل من را حل كنه
« پاسخ #14 : 25 آذر 1388، 11:27 ق‌ظ »
sabersoftجان این تیکه کد بالا را چیکارش کنم. نمی فهم چیکار کردی.مخصوصا این دو خط اولی را و echo <<<OPT و OPT اینا چی هستند کارشون چیه؟

سلام لینک زیر را ببین :
http://php.net/manual/en/function.echo.php