Ich habe ein Problem beim Aktualisieren des Werts, wenn ich eine Zeichenfolge in die Eingabe einfüge. Meine Spalte "Location", die ich aktualisieren möchte, ist ein Datentyp: varchar() In meiner Datenbank. Ich kann eine Zahl wie "3" einfügen und es wird in der Datenbank aktualisiert. Aber wenn ich eine Zeichenfolge wie "SS14" einfüge, wird es nicht in der Datenbank aktualisiert und ich bekomme einen Fehler. Was mache ich falsch?Kann den Wert als Zeichenfolge nicht aktualisieren
<?php
try {
// verify request
if($_SERVER['HTTP_X_REQUESTED_WITH'] != 'XMLHttpRequest') throw new Exception ('No Xrequest');
require_once('db.php');
$q= 'UPDATE prestashop.ps_product SET location = %s WHERE id_product = %d';
$sql = sprintf($q, $_REQUEST['value'], $_REQUEST['id']);
$rs=$ib->exec($sql);
if (PEAR::isError($rs)) throw new Exception ("DB Request: ". $rs->getMessage());
die("1"); // exit and return 1 on success
} catch (Exception $e) {
print $e->getMessage();
} '
<td class="test" id="'.$r["product_id"].'"><font size=+2>
<b>'.$r["product_s_desc"].'</b></font></td>
<script>
var x;
var h = 0; // blur fires multiple times, use h to count and fire once
var url = 'up.php';
$(".test").on('click', function(d) {
d.stopPropagation();
var x = $(d.target);
x.html('<input id="edit" style="width: 40px;" value="'+x.text()+'">');
var this_id = x.context.id;
$("#edit").on('blur', function(d) {
if (h < 1) {
h = h+1;
d.stopPropagation();
$(d.target.parentElement).text(d.target.value);
$.get(url, {id: this_id, value: d.target.value})
.done(function(d){ if(d == undefined || d != 1) { alert('Something went wrong, check your data and results. '+d);}})
.fail(function(d){ alert('error');});
$(".edit").off('blur');
}
return false;
});
h = 0;
});
</script>
Der Code ist nicht in der richtigen Reihenfolge in der "Code-Block", aber ich zeige nur den Code, den ich verwende – Somepub