コードは次のとおりです
require("../inc/pdo.php");function output($action,$select,$name){$select=$dbc->prepare("select id,ztname,zttype,zttime,headimg,riseimg from naszt where 1=1 and zttype=:zttype");$select->bindValue(":zttype",$action);$select->execute();$result='';while($row=$select->fetch()){$result.='<ul id="thumbs"><li class="'.$name.'">';$result.='<div class="img-container">';$result.='<div class="item-img">';$result.='<img src="ztImg/'.$row['riseimg'].'"width=235 height=300/></div><ul>';$result.='<li><a href="portfolio-single.html" class="view">测试1</a></li>';$result.='<li><a href='.$row['headimg'].' class="preview" data-rel="prettyPhoto[web]">测试12</a></li></ul></div><div class="item-info">';$result.='<h3 class="title">'.$row['ztname'].'</h3>';$result.='<span class="category">'. $row['zttype'].'</span>'; $result.='<p class="intro">1推荐日期:'.$row['zttime'].'</p></div></li>'; }return $result;}
<?phpheader("Content-Type:text/html;charset=utf-8");$dbtype='mysql';$host='127.0.0.1';$dbName='nas';$user='227227';$pass='227227';$db="$dbtype:host=$host;dbname=$dbName";try{$dbc=new PDO($db,$user,$pass);$dbc->exec('SET CHARACTER SET utf8');$dbc->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); //禁用prepared statements的仿真 }catch(PDOException $e){echo $e->getMessage();}?>
グローバルに基づいていない場合
pdo クラス ファイルを含み、クラスをインスタンス化し、パラメータを与えます。
pdo クラス ファイルが含まれ、クラスをインスタンス化し、パラメーターを与えます。
さて、SQL を pdo と結合する方法についてお聞きしたいのですが、たとえば、1=1 と tile=null は値がなければ無視されます
これをご覧になることをお勧めします。 http://php.xlxz.org/2013/ 11/370/
<?php include 'sql_build_query.php';include 'pdo_query.php';$db = new pdo_db; $sql = $db->pdo_query('show databases '); var_dump( $sql, $db->dbVersion() ); exit; $sql = $db->select( 'i.kd k, io.id dk, iil.ii ds' )->from( 'test t' ) ->leftjoin( 'post p', 't.id = ?', array( 2 ) ) ->order( 'name DESC, id ASC' ) ->where( array( 'xin = ? AND do > ?' => array( 1,3 ))) ->having( array('xin' => 'dkls' )) ->group( 'id' ) ->limit( 3,4 ) ->queryAll();exit;//var_dump( $sql ); $sql = $db->from( 'test') ->insert( array( 'kd' => '233', 'dkwe' => 323 )); $sql = $db->from( 'test' ) ->where( array( '( dk = ? and kd > ?) or ( dk = ? and ddd = ?)' => array( 2,3,5,4 ))) ->limit( 2 , 4 ) ->update( array( 'dkddl' => 'd', 'kdls' => 'dkdl' )); $sql = $db->from( 'test,test' ) ->select( 'test,test' ) ->where( array( 'id' => array( 3,3,4,2,3) )) ->limit( '3', 3) ->delete();
pdo クラス ファイルが含まれ、クラスをインスタンス化し、パラメーターを与えます。
さて、SQL と PDO を結合する方法を聞きたいのですが、たとえば、where 1=1 と tile=null に値がない場合は無視してください
WHere の後に変数を入力し、必要に応じて値を代入するだけです
必要に応じて
$ where=" WHERE xxxx=xxx";
それ以外の場合は
$where=""
$SQL="SELECT * FROM XXX $where";