如:SELECT id,sn,time,state,cart.rec_id FROM ecm_cart cart WHERE id = 1 and sn in(1,2) and time > 1 And time < 4 AND state != 5 and cand=1 and time1 = 1479286658 + 86400 ORDER BY id desc LIMIT 0,1
处理成:
SELECT id,sn,time,state,cart.rec_id FROM ecm_cart cart WHERE id = :1 and sn in(:2,:3) and time > :4 And time < :5 AND state != :6 and cand=:7 and time1 = :8 + :9 ORDER BY id desc LIMIT :10,:11
如果有好的解决方案以红包答谢。
PHP MySQL é¢å¤çè¯å¥
é¢å¤çè¯å¥å¯¹äºé²æ¢ MySQL æ³¨å ¥æ¯é常æç¨çã
é¢å¤çè¯å¥åç»å®åæ°
é¢å¤çè¯å¥ç¨äºæ§è¡å¤ä¸ªç¸åç SQL è¯å¥ï¼å¹¶ä¸æ§è¡æçæ´é«ã
é¢å¤çè¯å¥çå·¥ä½åçå¦ä¸ï¼
é¢å¤çï¼å建 SQL è¯å¥æ¨¡æ¿å¹¶åéå°æ°æ®åºãé¢ççå¼ä½¿ç¨åæ° "?" æ è®° ãä¾å¦ï¼
INSERT
INTO MyGuests (firstname, lastname, email) VALUES(?, ?, ?)
æ°æ®åºè§£æï¼ç¼è¯ï¼å¯¹SQLè¯å¥æ¨¡æ¿æ§è¡æ¥è¯¢ä¼åï¼å¹¶åå¨ç»æä¸è¾åºã
æ§è¡ï¼æåï¼å°åºç¨ç»å®çå¼ä¼ éç»åæ°ï¼"?" æ è®°ï¼ï¼æ°æ®åºæ§è¡è¯å¥ãåºç¨å¯ä»¥å¤æ¬¡æ§è¡è¯å¥ï¼å¦æåæ°çå¼ä¸ä¸æ ·ã
ç¸æ¯äºç´æ¥æ§è¡SQLè¯å¥ï¼é¢å¤çè¯å¥æ两个主è¦ä¼ç¹ï¼
é¢å¤çè¯å¥å¤§å¤§åå°äºåææ¶é´ï¼åªåäºä¸æ¬¡æ¥è¯¢ï¼è½ç¶è¯å¥å¤æ¬¡æ§è¡ï¼ã
ç»å®åæ°åå°äºæå¡å¨å¸¦å®½ï¼ä½ åªéè¦åéæ¥è¯¢çåæ°ï¼èä¸æ¯æ´ä¸ªè¯å¥ã
é¢å¤çè¯å¥é对SQLæ³¨å ¥æ¯é常æç¨çï¼å 为åæ°å¼åéå使ç¨ä¸åçåè®®ï¼ä¿è¯äºæ°æ®çåæ³æ§ã
MySQLi é¢å¤çè¯å¥
以ä¸å®ä¾å¨ MySQLi ä¸ä½¿ç¨äºé¢å¤çè¯å¥ï¼å¹¶ç»å®äºç¸åºçåæ°:
å®ä¾ (MySQLi 使ç¨é¢å¤çè¯å¥)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// å建è¿æ¥
$conn = new mysqli($servername, $username, $password, $dbname);
// æ£æµè¿æ¥
if ($conn->connect_error) {
die("è¿æ¥å¤±è´¥: " . $conn->connect_error);
}
// é¢å¤çåç»å®
$stmt = $conn->prepare("INSERT INTO MyGuests (firstname, lastname, email) VALUES(?, ?, ?)");
$stmt->bind_param("sss", $firstname, $lastname, $email);
// 设置åæ°å¹¶æ§è¡
$firstname = "John";
$lastname = "Doe";
$email = "john@example.com";
$stmt->execute();
$firstname = "Mary";
$lastname = "Moe";
$email = "mary@example.com";
$stmt->execute();
$firstname = "Julie";
$lastname = "Dooley";
$email = "julie@example.com";
$stmt->execute();
echo "æ°è®°å½æå ¥æå";
$stmt->close();
$conn->close();
?>
解æ以ä¸å®ä¾çæ¯è¡ä»£ç :
"INSERT INTO MyGuests (firstname, lastname, email) VALUES(?, ?, ?)"
å¨ SQL è¯å¥ä¸ï¼æ们使ç¨äºé®å· (?)ï¼å¨æ¤æ们å¯ä»¥å°é®å·æ¿æ¢ä¸ºæ´åï¼å符串ï¼å精度浮ç¹ååå¸å°å¼ã
æ¥ä¸æ¥ï¼è®©æ们æ¥çä¸ bind_param() å½æ°ï¼
$stmt->bind_param("sss", $firstname, $lastname, $email);
该å½æ°ç»å®äº SQL çåæ°ï¼ä¸åè¯æ°æ®åºåæ°çå¼ã "sss" åæ°åå¤çå ¶ä½åæ°çæ°æ®ç±»åãs å符åè¯æ°æ®åºè¯¥åæ°ä¸ºå符串ã
åæ°æ以ä¸åç§ç±»å:
i - integerï¼æ´åï¼
d - doubleï¼å精度浮ç¹åï¼
s - stringï¼å符串ï¼
b - BLOBï¼binary large object:äºè¿å¶å¤§å¯¹è±¡ï¼
æ¯ä¸ªåæ°é½éè¦æå®ç±»åã
éè¿åè¯æ°æ®åºåæ°çæ°æ®ç±»åï¼å¯ä»¥éä½ SQL æ³¨å ¥çé£é©ã
注æï¼ å¦æä½ æ³æå ¥å ¶ä»æ°æ®ï¼ç¨æ·è¾å ¥ï¼ï¼å¯¹æ°æ®çéªè¯æ¯é常éè¦çã
PDO ä¸çé¢å¤çè¯å¥
以ä¸å®ä¾æä»¬å¨ PDO ä¸ä½¿ç¨äºé¢å¤çè¯å¥å¹¶ç»å®åæ°:
å®ä¾ (PDO 使ç¨é¢å¤çè¯å¥)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDBPDO";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
// 设置 PDO é误模å¼ä¸ºå¼å¸¸
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// é¢å¤ç SQL 并ç»å®åæ°
$stmt = $conn->prepare("INSERT INTO MyGuests (firstname, lastname, email)
VALUES (:firstname, :lastname, :email)");
$stmt->bindParam(':firstname', $firstname);
$stmt->bindParam(':lastname', $lastname);
$stmt->bindParam(':email', $email);
// æå ¥è¡
$firstname = "John";
$lastname = "Doe";
$email = "john@example.com";
$stmt->execute();
// æå ¥å ¶ä»è¡
$firstname = "Mary";
$lastname = "Moe";
$email = "mary@example.com";
$stmt->execute();
// æå ¥å ¶ä»è¡
$firstname = "Julie";
$lastname = "Dooley";
$email = "julie@example.com";
$stmt->execute();
echo "æ°è®°å½æå ¥æå";
}
catch(PDOException $e)
{
echo $sql . "<br>" . $e->getMessage();
}
$conn = null;
?>追é®
é¢å¤çè¯å¥å¯¹äºé²æ¢ MySQL æ³¨å ¥æ¯é常æç¨çã
é¢å¤çè¯å¥åç»å®åæ°
é¢å¤çè¯å¥ç¨äºæ§è¡å¤ä¸ªç¸åç SQL è¯å¥ï¼å¹¶ä¸æ§è¡æçæ´é«ã
é¢å¤çè¯å¥çå·¥ä½åçå¦ä¸ï¼
é¢å¤çï¼å建 SQL è¯å¥æ¨¡æ¿å¹¶åéå°æ°æ®åºãé¢ççå¼ä½¿ç¨åæ° "?" æ è®° ãä¾å¦ï¼
INSERT
INTO MyGuests (firstname, lastname, email) VALUES(?, ?, ?)
æ°æ®åºè§£æï¼ç¼è¯ï¼å¯¹SQLè¯å¥æ¨¡æ¿æ§è¡æ¥è¯¢ä¼åï¼å¹¶åå¨ç»æä¸è¾åºã
æ§è¡ï¼æåï¼å°åºç¨ç»å®çå¼ä¼ éç»åæ°ï¼"?" æ è®°ï¼ï¼æ°æ®åºæ§è¡è¯å¥ãåºç¨å¯ä»¥å¤æ¬¡æ§è¡è¯å¥ï¼å¦æåæ°çå¼ä¸ä¸æ ·ã
ç¸æ¯äºç´æ¥æ§è¡SQLè¯å¥ï¼é¢å¤çè¯å¥æ两个主è¦ä¼ç¹ï¼
é¢å¤çè¯å¥å¤§å¤§åå°äºåææ¶é´ï¼åªåäºä¸æ¬¡æ¥è¯¢ï¼è½ç¶è¯å¥å¤æ¬¡æ§è¡ï¼ã
ç»å®åæ°åå°äºæå¡å¨å¸¦å®½ï¼ä½ åªéè¦åéæ¥è¯¢çåæ°ï¼èä¸æ¯æ´ä¸ªè¯å¥ã
é¢å¤çè¯å¥é对SQLæ³¨å ¥æ¯é常æç¨çï¼å 为åæ°å¼åéå使ç¨ä¸åçåè®®ï¼ä¿è¯äºæ°æ®çåæ³æ§ã
MySQLi é¢å¤çè¯å¥
以ä¸å®ä¾å¨ MySQLi ä¸ä½¿ç¨äºé¢å¤çè¯å¥ï¼å¹¶ç»å®äºç¸åºçåæ°:
å®ä¾ (MySQLi 使ç¨é¢å¤çè¯å¥)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// å建è¿æ¥
$conn = new mysqli($servername, $username, $password, $dbname);
// æ£æµè¿æ¥
if ($conn->connect_error) {
die("è¿æ¥å¤±è´¥: " . $conn->connect_error);
}
// é¢å¤çåç»å®
$stmt = $conn->prepare("INSERT INTO MyGuests (firstname, lastname, email) VALUES(?, ?, ?)");
$stmt->bind_param("sss", $firstname, $lastname, $email);
// 设置åæ°å¹¶æ§è¡
$firstname = "John";
$lastname = "Doe";
$email = "john@example.com";
$stmt->execute();
$firstname = "Mary";
$lastname = "Moe";
$email = "mary@example.com";
$stmt->execute();
$firstname = "Julie";
$lastname = "Dooley";
$email = "julie@example.com";
$stmt->execute();
echo "æ°è®°å½æå ¥æå";
$stmt->close();
$conn->close();
?>
解æ以ä¸å®ä¾çæ¯è¡ä»£ç :
"INSERT INTO MyGuests (firstname, lastname, email) VALUES(?, ?, ?)"
å¨ SQL è¯å¥ä¸ï¼æ们使ç¨äºé®å· (?)ï¼å¨æ¤æ们å¯ä»¥å°é®å·æ¿æ¢ä¸ºæ´åï¼å符串ï¼å精度浮ç¹ååå¸å°å¼ã
æ¥ä¸æ¥ï¼è®©æ们æ¥çä¸ bind_param() å½æ°ï¼
$stmt->bind_param("sss", $firstname, $lastname, $email);
该å½æ°ç»å®äº SQL çåæ°ï¼ä¸åè¯æ°æ®åºåæ°çå¼ã "sss" åæ°åå¤çå ¶ä½åæ°çæ°æ®ç±»åãs å符åè¯æ°æ®åºè¯¥åæ°ä¸ºå符串ã
åæ°æ以ä¸åç§ç±»å:
i - integerï¼æ´åï¼
d - doubleï¼å精度浮ç¹åï¼
s - stringï¼å符串ï¼
b - BLOBï¼binary large object:äºè¿å¶å¤§å¯¹è±¡ï¼
æ¯ä¸ªåæ°é½éè¦æå®ç±»åã
éè¿åè¯æ°æ®åºåæ°çæ°æ®ç±»åï¼å¯ä»¥éä½ SQL æ³¨å ¥çé£é©ã
注æï¼ å¦æä½ æ³æå ¥å ¶ä»æ°æ®ï¼ç¨æ·è¾å ¥ï¼ï¼å¯¹æ°æ®çéªè¯æ¯é常éè¦çã
PDO ä¸çé¢å¤çè¯å¥
以ä¸å®ä¾æä»¬å¨ PDO ä¸ä½¿ç¨äºé¢å¤çè¯å¥å¹¶ç»å®åæ°:
å®ä¾ (PDO 使ç¨é¢å¤çè¯å¥)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDBPDO";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
// 设置 PDO é误模å¼ä¸ºå¼å¸¸
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// é¢å¤ç SQL 并ç»å®åæ°
$stmt = $conn->prepare("INSERT INTO MyGuests (firstname, lastname, email)
VALUES (:firstname, :lastname, :email)");
$stmt->bindParam(':firstname', $firstname);
$stmt->bindParam(':lastname', $lastname);
$stmt->bindParam(':email', $email);
// æå ¥è¡
$firstname = "John";
$lastname = "Doe";
$email = "john@example.com";
$stmt->execute();
// æå ¥å ¶ä»è¡
$firstname = "Mary";
$lastname = "Moe";
$email = "mary@example.com";
$stmt->execute();
// æå ¥å ¶ä»è¡
$firstname = "Julie";
$lastname = "Dooley";
$email = "julie@example.com";
$stmt->execute();
echo "æ°è®°å½æå ¥æå";
}
catch(PDOException $e)
{
echo $sql . "<br>" . $e->getMessage();
}
$conn = null;
?>追é®
æ们ç°å¨æ¯çå¾å¤é¡¹ç®ï¼ç¨çæ¯åçsqlè¯å¥ï¼ç°å¨è¦è¿ç§»å°php7ç¨pdoå»åé¢å¤çï¼ä¸å¯è½å¯¹ä»¥å项ç®åä¿®æ¹ï¼åªè½åå ¼å®¹
温馨提示:答案为网友推荐,仅供参考