$bliang='这是个变量'$sql=select * from a表 where cart like '%.$bliang.%'$query=mysql_query($sql);while($row=mysql_fetch_array($query)){ …………}
上边是查询代码 然后我使用它时 只需要这样 比如 $row[$bliang='分类2'] 这样就可以分类2下的内容
$row[$bliang='分类3'] 就显示分类3下的内容
这样的需求 要怎么样实现呢
回复讨论(解决方案) function foo($x){global $con;$sql=select * from a表 where cart like '%.$x.%'mysql_query($sql,$con);// some codereturn $query;}
参考 可写成类 可写成函数...
function foo($x){global $con;$sql=select * from a表 where cart like '%.$x.%'mysql_query($sql,$con);// some codereturn $query;}
参考 可写成类 可写成函数...
版主大人可否稍微多给点代码。。 我小白 不太会用额。。 你的好像是查询的方法 输出结果时该怎么做呢
function foo($x){global $con;$sql=select * from a表 where cart like '%.$x.%'mysql_query($sql,$con);// some codereturn $query;}
参考 可写成类 可写成函数... 同求我也不是很懂,是不是要include下文件然后调用foo方法?return表示返回$query
写成函数啊,我也是刚学php,我给你一个我自己做的类参考下吧,所有数据库操作都在这里了
dsn, $this->user, $this->pass); $dbh->query($this->names); return $dbh->query($sql); $dbh = null; } catch(exception $e) { echo 'error: ' . $e->getmessage(); } } //操作单条数据(更新/删除/插入),无返回结果 public function sql_one($sql) { try { $dbh = new pdo($this->dsn, $this->user, $this->pass); $dbh->exec($this->names); $dbh->exec($sql); $dbh = null; } catch(exception $e) { echo 'error: ' . $e->getmessage(); } } //操作多条数据(更新/删除),无返回结果 public function sql_more($sql, $str) { try { $dbh = new pdo($this->dsn, $this->user, $this->pass); $dbh->exec($this->names); foreach ($str as $arrs) { $dbh->exec($sql . $arrs); } $dbh = null; } catch(exception $e) { echo 'error: ' . $e->getmessage(); } } //参数化查询数据库返回结果(单条) public function cs_sql_select($sql,$str) { try { $dbh = new pdo($this->dsn, $this->user, $this->pass); $dbh->setattribute(pdo::attr_emulate_prepares, false); $dbh->query($this->names); $stmt = $dbh->prepare($sql); $stmt->bindvalue(:key, $str ,pdo::param_int); $stmt->execute(); return $stmt; $dbh = null; } catch(exception $e) { echo 'error: ' . $e->getmessage(); } } //参数化查询操作多条数据(删除/更新),无返回结果 public function cs_sql_more($sql, $str) { try { $dbh = new pdo($this->dsn, $this->user, $this->pass); $dbh->setattribute(pdo::attr_emulate_prepares, false); $dbh->exec($this->names); foreach ($str as $arrs) { $stmt = $dbh->prepare($sql); $stmt->bindvalue(:key, $arrs,pdo::param_int); $stmt->execute(); } $dbh = null; } catch(exception $e) { echo 'error: ' . $e->getmessage(); } } //参数化查询操作单条数据(删除/更新),无返回结果 public function cs_sql_one($sql, $str) { try { $dbh = new pdo($this->dsn, $this->user, $this->pass); $dbh->setattribute(pdo::attr_emulate_prepares, false); $dbh->exec($this->names); $stmt = $dbh->prepare($sql); $stmt->bindvalue(:key, $str,pdo::param_int); $stmt->execute(); $dbh = null; } catch(exception $e) { echo 'error: ' . $e->getmessage(); } } ////////}?>
下面是调用方法:
sql_one(delete from `user_type` where `user_id` = .$_request['id'].);//无参数化查询操作$mysql->cs_sql_one(delete from `user_type` where `user_id` = :key,$_request['id']);//参数化查询操作}else{echo '非法操作';}} //多选删除else if($_request[action] == 'delcheck'){$id=$_post['delall'];if(isset($id)){//$mysql->sql_more(delete from `user_type` where `user_id` = ,$id);//无参数化查询操作$mysql->cs_sql_more(delete from `user_type` where `user_id` = :key,$id);//参数化查询操作}}//读取数据库?> 编号 id 姓名 性别 电话 qq 地址 email 删除 选择
sql_select('select * from user_type order by user_id'); foreach ($aa as $row) {//输出内容echo '';echo ''.$row['user_id'].' '.$row['user_name'].' '.$row['user_real_name'].' '.$row['user_sex'].' '.$row['user_tel'].' '.$row['user_qq'].' '.$row['user_address'].' '.$row['user_email'].' 删除 ';echo '
';}?>
function foo($x){global $con;$sql=select * from a表 where cart like '%.$x.%'mysql_query($sql,$con);// some codereturn $query;}
参考 可写成类 可写成函数...
版主大人可否稍微多给点代码。。 我小白 不太会用额。。 你的好像是查询的方法 输出结果时该怎么做呢 return就是输出。
写成函数啊,我也是刚学php,我给你一个我自己做的类参考下吧,所有数据库操作都在这里了
我是这样的意思
$b='这是个变量'$sql=select * from a表 where cart like '%.$b.%'$query=mysql_query($sql);while($row=mysql_fetch_array($query)){ $new=$row['title']. - .$row['con']. - .$row['num'].;}
上面是代码 然后我用的时候只需要
分类1 - 内容1 - 5
分类2 - 内容2 - 7
我只是这么表达我想的那个意思 上面的代码肯定不是那么写的
写成函数啊,我也是刚学php,我给你一个我自己做的类参考下吧,所有数据库操作都在这里了
我是这样的意思
$b='这是个变量'$sql=select * from a表 where cart like '%.$b.%'$query=mysql_query($sql);while($row=mysql_fetch_array($query)){ $new=$row['title']. - .$row['con']. - .$row['num'].;}
上面是代码 然后我用的时候只需要
分类1 - 内容1 - 5
分类2 - 内容2 - 7
我只是这么表达我想的那个意思 上面的代码肯定不是那么写的
就是将那查询数据库代码写成函数啊,直接带入变量b调用不久行了
$new=$row['title']. - .$row['con']. - .$row['num'].;
改写为
$new[$row['title']] = $row['title']. - .$row['con']. - .$row['num'];
function foo($x){global $con;$sql=select * from a表 where cart like '%.$x.%'mysql_query($sql,$con);// some codereturn $query;}
function foo($x){global $con;$sql=select * from a表 where cart like '%.$x.%'mysql_query($sql,$con);// some codereturn $query;}
参考 可写成类 可写成函数...
$tagxs_lx=select * from .db_musicdata. left join .db_singer. on .db_musicdata..singer_id=.db_singer..singer_id left join .db_tag. on .db_musicdata..tag_id=.db_tag..tag_id and .db_tag..tag like '%标签1%' order by .db_musicdata..music_id desc limit 10;$query_lx=mysql_query($tagxs_lx);$num=0;$tag1=;while($row=mysql_fetch_array($query_lx)){$num++;if($row['singer_id']==){$singer=;}else{$singer=''.$row['singer_name'].'';} $tag1 .=''.sprintf(%02d, $num).''.$row['music_name'].''.$singer.'加入播放列表';}
就是这么个代码了
然后我页面调用的时候 直接 就可以了
然后我页面调用的时候 直接 就可以了
取回的是数组 你这种需求反人类...难道你要在function里把格式都写好,那也是反人类设计.
所以 我觉得你还是按照你原来的额写法写算了,别搞function了....
function你能看懂 剩下的不就是循环出数据 拼接成你要的样子吗?这个地方也不熟悉的话 我建议你先弄清楚返回的数据结构...
不知道怎么说了
查找别的问题 偶然解决了这个, 回来做个标记 顺便吧解决方法贴上来留着
function index($title,$limit){$text=select * from test wheretag like '%$title%' order by test.id desc limit $limit; return $text;}echo index('条件','可以多个');
呵呵 就是这样