2015-05-01 52 views
0


我目前有一個問題與ajax或加載與$('#id')。頁面加載(「page.php #id」)頁的一個片段。 我想要做的是一個圖片庫。
爲了允許用戶更新專輯的名稱,我使用調用ajax函數的按鈕創建了一個表單。這個ajax函數像「$ _POST ['oldAlbumName'] ='newAlbumName'」(或多或少)發送數據。 不幸的是,沒有任何反應。Ajax或加載頁面的一部分不起作用

我不知道它是來自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/>"; 
}?> 

(回聲只打印 「胭脂扣」,這是正常的)

這裏是我的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"); 

      } 
     });   
    } 

(警報打印 「Rouge_text」在我的情況下,這也是正常的)

當然,我的php是在頁面「Galerie.php」中的ID爲「updateSpan」的兩個跨度之間。

我的錯誤在哪裏?

謝謝!

+0

你將不得不成爲一個更具體一點比「什麼也沒發生」。你提供的ajax語句發送'textID',而不是'oldAlbumName'。 –

+0

由nothings發生,我的意思是我的數據庫沒有更新。關於「oldAlbumName」,這是爲了解釋我想要做什麼。 我不應該在這裏嘗試獲取$ _POST ['textID']而不是$ _POST ['Rouge_text']嗎? – Raphallal

+0

此外,我們從來沒有進入if(isset($ _ POST [$ donnees ['A']。「_ text」]))...我不明白爲什麼。 – Raphallal

回答

0

由於喬希,我想通了,如何解決我的問題:

我改變了我的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"); 

     } 
    }); 
}