PDA

View Full Version : سوال: ایرادش چیه؟



raha1234567
یک شنبه 25 آبان 1393, 19:28 عصر
<?php
if ( isset($_POST["tsearch"]))
{
$sn="localhost";
$user="root";
$pass="";
$dbn="jobs";
$link=mysql_connect($sn,$user,$pass) or die(mysql_error());
mysql_query("SET Names 'utf8'");
mysql_select_db($dbn,$link);

//پیدا کردن جدول مورد نظر



$tbl=mysql_query("SELECT TABLE_NAMEFROM INFORMATION_SCHEMA.TABLESWHERE TABLE_TYPE = 'BASE TABLE'
AND TABLE_NAME='".$_POST["tsearch"]."' ",$link);
$result=mysql_query("SELECT pic FROM $tbl",$link);
$num=mysql_num_rows($result);




سلام دوستان میشه بگید این کد چرا خطای زیر رو میده


Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\wamp\www\jobs\search.php on line 82

H:Shojaei
یک شنبه 25 آبان 1393, 19:46 عصر
چون شما نباید کوئری رو اجرا کنید بعد بدید به mysql_num_rows باید مستقیم خود کوئری رو بدین بهش...

mysql_num_rows('select * from tbl')

raha1234567
یک شنبه 25 آبان 1393, 21:35 عصر
آقا به هیچ شکلی دستورات fetch رو ازم قبول نمیکنهههههههه کمک :اشتباه:

rambod18
یک شنبه 25 آبان 1393, 22:16 عصر
یک print_r از $result بگیر ببین چی بر میگردونه که خطا میده.
من دستور fetch ندیدم تو کدها

raha1234567
یک شنبه 25 آبان 1393, 22:26 عصر
خب اینجا از $row ایراد میگیره......


<!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>Untitled Document</title>
<style type="text/css">
#form1 table tr td label {
position: static;
}
#tsearch{
width: 600px;
border-width: 2;
height: 40px;
}
#tsearch{alignment-baseline:central}
#tsearch{alignment-adjust:central}
#bsearch{
width: 150px;
border-width: 2;
height: 30px;
}
</style></head>

<body>
<form id="form1" name="form1" method="post" action="#">
<table width="1350" height="506" border="0">
<tr>
<td height="39">&nbsp;</td>
</tr>
<tr>
<td height="199">&nbsp;</td>
</tr>
<tr>
<td height="72"><label for="tsearch"></label>

<table width="1347" height="70" border="0">
<tr>
<td width="456" height="66">&nbsp;</td>
<td width="727">
<label for="tsearch2"></label>
<input name="tsearch" type="text" id="tsearch" width="450" height="30" /></td>
<td width="150">&nbsp;</td>
</tr>
</table></td>
</tr>
<tr>
<td height="95"><table width="1343" border="0">
<tr>
<td width="669">&nbsp;</td>
<td width="518"><input type="submit" name="bsearch" id="bsearch" value="جستجو" /></td>
<td width="142">&nbsp;</td>
</tr>
</table></td>
</tr>
<tr>
<td height="75">&nbsp;</td>
</tr>
</table>
</form>

<?php
if (isset($_POST["tsearch"]))
{
$sn="localhost";
$user="root";
$pass="";
$dbn="jobs";
$link=mysql_connect($sn,$user,$pass) or die(mysql_error());
mysql_query("SET Names 'utf8'");
mysql_select_db($dbn,$link);

//پیدا کردن جدول مورد نظر
$tbl=mysql_query("SELECT TABLE_NAMEFROM INFORMATION_SCHEMA.TABLESWHERE TABLE_TYPE = 'BASE TABLE'
AND TABLE_NAME='".$_POST["tsearch"]."' ",$link);
$result=mysql_query("SELECT pic FROM tbl ",$link);
//$row = mysql_fetch_assoc($result);
//}
//if($row['pic']=='".$_POST["tsearch"]."'){
// echo $row['pic'];

// header('location:kafinet.php');

echo $result;
}
?>
<table>
<tr>
<td>
<?php
echo $result;
?>
</td></tr></table>

</body>
</html>


این کل صفحه اول منه دارم امتحان میکنم ببینم چاچ میشه که چاپ نمیشه

id1385
یک شنبه 25 آبان 1393, 22:26 عصر
سلام
بهترین کار استفاده از کلاسه

فایل کانفیگ

<?php
/** The name of the database */
define('DB_NAME','app_anbar');


/** MySQL database username */
define('DB_USER', 'root');


/** MySQL database password */
define('DB_PASSWORD', '');


/** MySQL hostname */
define('DB_HOST', 'localhost');


/** Database Charset to use in creating database tables. */
define('DB_CHARSET', 'utf8');
?>



کانکت شدن به دیتابیس:

function _connectDb() {
// include db class and connect to db
if (!@include_once admin_class . "db.class.php") {
return false;
}
$db = new DB(TRUE, admin_class . "config.inc.php");
// check db is connected or not
if (!$db->_con || !$db->_db) {
return false;
}
return $db;
}





استفاده از فانکشن کانکت

$db = _connectDb();
if (!$db) {
return json_encode(array('Error', $db_error));
}



تعداد رکورد:

// chck current state for called group
$sql = "SELECT `kala_is_private` FROM `k_kalaha` WHERE `kala_id` = '{$token}' LIMIT 1;";
$cState = $db->getRow($sql, TRUE, FALSE);



انتخاب و نمایش

$strSql = "SELECT `dasteh_id`,`dasteh_name`,`dasteh_sharh` FROM `k_dastebandi` WHERE `dasteh_faal` = 1;";
$result = $db->query($strSql);


// create cats list
if (is_resource($result)) {
$numLines = $db->numRows();
if ($numLines > 0) {
while ($row = mysql_fetch_array($result)) {
$s = "";
if (intval($selected_cat) === intval($row['dasteh_id'])) {
$s = "selected=\"selected\"";
}
$catagorys.= sprintf($tpl, globals::CreateToken($row[0]), $s, $row[2], globals::convertNumber($row[1]));
}
}
}
mysql_free_result($result);
if ($Ocategories) {
return $catagorys;
}




آپدیت کردن:

$count = $db->countOf("k_dastebandi", "`dasteh_id` = '{$cat_id}'");
if ($count < 1) {
return json_encode(array('Error', $GLOBALS['not_found']));
}


$query = "UPDATE `k_kalaha` SET `kala_id_dasteh` = '{$cat_id}',`kala_name` = '{$data_array[1]}',`kala_sharh` = '{$data_array[2]}',`kala_virayesh_tavasote` = '{$user}', `kala_is_faal` = '{$tFaal}', `kala_is_private` = '{$tPriv}', `Gheymat` = '{$tFee}', `Kala_image_count` = '{$tImgC}' WHERE `kala_id` ='{$token}';";


$res = $db->run($query);
if ($res) {
return json_encode(array('Edidted', 'ok'));
}
} else {
return json_encode(array('Error', $GLOBALS['not_found']));
}



حذف :

// delete item query
$query = "DELETE FROM `k_kalaha` WHERE `kala_id` = '{$token}' LIMIT 1;";
$res = $db->run($query);
if ($res) {
return json_encode(array('deleted', "Null"));
}



افزودن :

// create add query and save new data
if (strtolower($data_array[8]) === "add") {
$str_sql = "INSERT INTO `k_kalaha` (`kala_id_dasteh`,`kala_name`,`kala_sharh`,`kala_i s_faal`,`kala_is_private`,`Gheymat`,`Kala_image_co unt`,`kala_khadamat`,`kala_tarikh_ijad`,`kala_ijad _tavasote`) VALUES ('%s','%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s');";
$str_sql = sprintf($str_sql, $cat_id, $db->filter($data_array[1]), $db->filter($data_array[2]), intval($data_array[3]), intval($data_array[4]), floatval($data_array[5]), intval($data_array[6]), NULL, date("Y-m-d H:m:s"), globals::admin_dsiplay(true));
$result = $db->run($str_sql);
if ($result) {
return json_encode(array('added', 'ok'));
}
}



یه کم با فایل کار کنید به راحتی یاد میگیرید:

البته این کدها نمونه هستن و مطمئناً روی لوکال شما کار نمی کنن مگه دستکاری بشن
موفق باشید

125780

rambod18
دوشنبه 26 آبان 1393, 05:26 صبح
توی کوئری یک $ قبل از tbl نگذاشتی،.درضمن موقع کار با ارایه باید از print_r() استفاده بشه وگرنه خطا میده