我目前在使用$('#id')加载ajax或加载页面片段时遇到问题.load(" page.php#id")。
我想要做的是图片库。
为了让用户更新专辑的名称,我创建了一个带有调用ajax函数的按钮的表单。这个ajax函数在帖子中发送数据,如" $ _ POST [' oldAlbumName'] =' newAlbumName'" (或多或少)。
不幸的是,没有任何事情发生。
我不知道它是来自ajax还是来自重装的跨度。 这是我的PHP:
<?php
try
{
$bdd = new PDO('mysql:host=localhost;dbname=bd;charset=utf8', 'root', '');
$reponse = $bdd->query('SELECT DISTINCT album AS A from galerie');
while($donnees = $reponse->fetch())
{
echo $donnees['A']."<br/>";
if(isset($_POST[$donnees['A']."_text"]))
{
echo $_POST[$donnees['A']."_text"]."<br/>";
echo $donnees['A']."_text<br/>";
$bdd->query("UPDATE galerie SET album ='".$_POST[$donnees['A']."_text"]."' WHERE album='".$donnees['A']."_text'");
}
}
}
catch(Exception $e)
{
echo "Impossible de se connecter à la BDD<br/>";
}?>
(回声仅打印&#34; Rouge&#34;,这是正常的)
这是我的JS:
function renommageAjax(textID)
{
var splitted = textID.split("_");
var champ = splitted[0];
$.ajax({
type: "POST",
url: "Galerie.php",
data: {
textID: $("#"+textID).val(),
},
dataType: "text",
success: function(data) {
alert(textID);
$('#'+champ+'_name').html($("#"+textID).val());
$('#updateSpan').load("Galerie.php #updateSpan");
}
});
}
(提醒打印&#34; Rouge_text&#34;在我的情况下,这也是正常的)
当然,我的php介于两个范围之间,ID和#34; updateSpan&#34;,在页面&#34; Galerie.php&#34;。
我的错误在哪里?
谢谢!
答案 0 :(得分:0)
感谢Josh,我想出了如何解决我的问题:
我改变了我的JS(所以我的PHP也是如此)所以我发送了两个值:旧的和新的。
新PHP看起来像这样:
<?php
if(isset($_POST['textOld']))
{
try
{
$bdd = new PDO('mysql:host=localhost;dbname=bd;charset=utf8', 'root', '');
$reponse = $bdd->query('SELECT DISTINCT album AS A from galerie');
while($donnees = $reponse->fetch())
{
if($_POST['textOld'] == $donnees['A'])
{
$bdd->query("UPDATE galerie SET album ='".$_POST['textNew']."' WHERE album='".$_POST['textOld']."'");
}
}
$reponse->closeCursor();
}
catch(Exception $e)
{
echo "Impossible de se connecter à la BDD<br/>";
}
}
?>
新的JS:
function renommageAjax(textID)
{
var splitted = textID.split("_");
var champ = splitted[0];
$.ajax({
type: "POST",
url: "Galerie.php",
data: {
textOld: champ,
textNew: $("#"+textID).val()
},
dataType: "text",
success: function(data) {
$('#'+champ+'_name').html($("#"+textID).val());
$('#updateSpan').load("Galerie.php #updateSpan");
}
});
}