【发布时间】:2015-04-26 11:28:34
【问题描述】:
好的,我尝试使用 PDO MYSQL 进行更新查询,以便了解如何使其工作,然后创建一个函数以使其更有效
问题是不起作用,我做了所有日志文件允许我的调试,以及个人回报,我也修复了导航器告诉的任何地方,甚至使用 Firebug
有什么想法吗?
任何建议、问题、评论或任何类型的答案都将不胜感激
提前致谢
<?php
include('conexion.php');
session_start();
$idf = $_POST['Id_Msg'];
$ids = (int) $idf;
var_dump($ids);
echo '<br /><br />';
var_dump($_FILES);
echo '<br /><br />';
var_dump($_POST);
echo '<br /><br />';
$wlq = -1;
if($_POST['Title']) {
$wlq++;
}
if($_POST['Prelude']) {
$wlq++;
}
if($_POST['Text']) {
$wlq++;
}
if($_POST['NOMBR1']) {
$wlq++;
}
if($_POST['NOMBR2']) {
$wlq++;
}
if($_POST['NOMBR3']) {
$wlq++;
}
if($_POST['NOMBR4']) {
$wlq++;
}
if($_POST['REGIN']) {
$wlq++;
}
if($_POST['CTGRY']) {
$wlq++;
}
if(!empty($_FILES['RutIm']['name'])) {
$wlq++;
echo 'me esta detectando visteh!';
}
echo "Asignado es: ".$wlq.'<br /><br />';
$qls = "UPDATE `cmtmplo` SET";
if($_POST['Title']) {
if($wlq > 0){
$qls .=" `Title` = :Title , ";
$wlq--;
} else {
$qls .=" `Title` = :Title";
}
}
if($_POST['Prelude']) {
if($wlq > 0){
$qls .=" `Prelude` = :Prelude , ";
$wlq--;
} else {
$qls .=" `Prelude` = :Prelude";
}
}
if($_POST['Text']) {
if($wlq > 0){
$qls .=" `Text` = :Text , ";
$wlq--;
} else {
$qls .=" `Text` = :Text";
}
}
if($_POST['NOMBR1']) {
if($wlq > 0){
$qls .=" `NOMBR1` = :NOMBR1 , ";
$wlq--;
} else {
$qls .=" `NOMBR1` = :NOMBR1";
}
}
if($_POST['NOMBR2']) {
if($wlq > 0){
$qls .=" `NOMBR2` = :NOMBR2 , ";
$wlq--;
} else {
$qls .=" `NOMBR2` = :NOMBR2";
}
}
if($_POST['NOMBR3']) {
if($wlq > 0){
$qls .=" `NOMBR3` = :NOMBR3 , ";
$wlq--;
} else {
$qls .=" `NOMBR3` = :NOMBR3";
}
}
if($_POST['NOMBR4']) {
if($wlq > 0){
$qls .=" `NOMBR4` = :NOMBR4 , ";
$wlq--;
} else {
$qls .=" `NOMBR4` = :NOMBR4";
}
}
if($_POST['REGIN']) {
if($wlq > 0){
$qls .=" `REGIN` = :REGIN , ";
$wlq--;
} else {
$qls .=" `REGIN` = :REGIN";
}
}
if($_POST['CTGRY']) {
if($wlq > 0){
$qls .=" `CTGRY` = :CTGRY , ";
$wlq--;
} else {
$qls .=" `CTGRY` = :CTGRY";
}
}
if(!empty($_FILES['RutIm']['name'])) {
if($wlq > 0){
$qls .=" `RutIm` = :RutIm , ";
$wlq--;
} else {
}
}
$qls .= " WHERE 'Id_Msg' = :ids";
echo $qls;
$stmt = $con->prepare($qls);
$stmt->bindValue(':ids', $ids);
if(isset($_POST['Title']) && !empty($_POST['Title'])) {
$stmt->bindValue('Title', $_POST['Title']);
}
if(isset($_POST['Prelude']) && !empty($_POST['Prelude'])) {
$stmt->bindValue('Prelude', $_POST['Prelude']);
}
if(isset($_POST['Text']) && !empty($_POST['Text'])) {
$stmt->bindValue('Text', $_POST['Text']);
}
if(isset($_POST['NOMBR1']) && !empty($_POST['NOMBR1'])) {
$stmt->bindValue('NOMBR1', $_POST['NOMBR1']);
}
if(isset($_POST['NOMBR2']) && !empty($_POST['NOMBR2'])) {
$stmt->bindValue('NOMBR2', $_POST['NOMBR2']);
}
if(isset($_POST['NOMBR3']) && !empty($_POST['NOMBR3'])) {
$stmt->bindValue('NOMBR3', $_POST['NOMBR3']);
}
if(isset($_POST['NOMBR4']) && !empty($_POST['NOMBR4'])) {
$stmt->bindValue('NOMBR4', $_POST['NOMBR4']);
}
if(isset($_POST['REGIN']) && !empty($_POST['REGIN'])) {
$stmt->bindValue('REGIN', $_POST['REGIN']);
}
if(isset($_POST['CTGRY']) && !empty($_POST['CTGRY'])) {
$stmt->bindValue('CTGRY', $_POST['CTGRY']);
}
if(!empty($_FILES['RutIm']['name'])) {
$carpeta = "images/";
opendir($carpeta);
$destiny = $carpeta.$_FILES['RutIm']['name'].".jpg";
copy($_FILES['RutIm']['tmp_name'],$destiny);
$skr=$_FILES['RutIm']['name'];
$stmt->bindValue('RutIm', $skr);
}
$stmt->execute();
?>
回显 $qls 输出
UPDATE cmtmplo SET Title = :Title , REGIN = :REGIN , CTGRY = :CTGRY WHERE 'Id_Msg' = :ids
【问题讨论】:
-
那么你的
echo $qls;输出是什么? -
这取决于我添加文本的部分和不添加的部分,但这是当前测试返回的内容更新
cmtmploSETTitle= :Title ,REGIN= :REGIN , @ 987654327@ = :CTGRY WHERE 'Id_Msg' = :ids -
那么请给我看看
$qls的输出? -
在这种 PDO Mysql 的情况下如何获得输出?
-
echo $qls;在您的$con->prepare之前!
标签: php mysql pdo sql-update