Witam.

Otóż mam taki problem.

Utworzyłem sobie skrypt, który wyświetla tabelę (okienko) z paroma inputami po kliknięciu w obrazek z przypisanym id. Wszystko pięknie działa, okienko się pojawia lecz pojawia się problem, gdy do skryptu dołączam polecenia ajaxowe.

Plik edit.php (z okienkiem):

  1. echo '<table border="0" class="query_table" width="100%" cellspacing="0" cellpadding="0">';
  2. echo '<tr>';
  3. echo '<td>';
  4. echo '<div class="naglowek" width="3">Edycja - '.$news['name'].'</div>';
  5. echo '<table border="0" class="block" width="100%" cellspacing="10" cellpadding="0">';
  6. if ($_POST['title']!='' && $_POST['tekst']!='')
  7. {
  8. $id = $_GET['id'];
  9. $tytul = $_POST['title'];
  10. $tekst = $_POST['tekst'];
  11. require 'conn.php';
  12. $zapytanie = mysql_query("UPDATE tc_news SET name='$tytul', tresc='$tekst' WHERE id=$id") or die (mysql_error());
  13. echo '<tr><td>';
  14. echo 'News o ID '.$id.' został zaktualizowany';
  15. echo '</tr></td>';
  16. }
  17. echo '<form method=post action=news.php>';
  18. echo '<tr>';
  19. echo '<td width="15%" valign="top">';
  20. echo 'Tytuł';
  21. echo '</td>';
  22. echo '<td>';
  23. echo '<input type="text" name="title" style="width: 100%;" value="'.$news['name'].'" >';
  24. echo '</td>';
  25. echo '</tr>';
  26. echo '<tr>';
  27. echo '<td valign="top" width="15%">';
  28. echo 'Tekst główny';
  29. echo '</td>';
  30. echo '<td>';
  31. echo '<textarea name="tekst" style="width: 100%; height: 150px;">'.$news['tresc'].'</textarea>';
  32. echo '</td>';
  33. echo '</tr>';
  34. echo '<tr>';
  35. echo '<td>';
  36. echo '<input type="submit">';
  37. echo '</td>';
  38. echo '</tr>';
  39. echo '</form>';
  40. echo '</table>';
  41. echo '</td>';
  42. echo '</tr>';
  43. echo '</table>';
  44.  
  45. ?>


Plik news.php

  1. while($news = mysql_fetch_array($zapytanie))
  2. {
  3. echo '<form>';
  4. echo '<tr>';
  5. echo '<td width=10% class="table_body">';
  6. echo ''.$news['id'].'.';
  7. echo '</td>';
  8. echo '<td class="table_body">';
  9. echo $news['name'];
  10. echo '</td>';
  11. echo '<td class="table_body" align="right">';
  12. echo '<a id='.$news['id'].' class="editimg" onclick="showEdit(this.id); return false;"><img name="edit" src="edit.png" border="0" alt="usuń"></a> ';
  13. echo ' <a href="news.php?action=delete"><img src="delete.png" border="0" alt="usuń"></a>';
  14. echo '</td>';
  15. echo '</tr>';
  16. echo '</form>';
  17. }


Skrypt

  1. <script type='text/javascript'>
  2. function showEdit(str)
  3. {
  4. if (str=="")
  5. {
  6. document.getElementByClass("edit").innerHTML="";
  7. return;
  8. }
  9. if (window.XMLHttpRequest)
  10. {// code for IE7+, Firefox, Chrome, Opera, Safari
  11. xmlhttp=new XMLHttpRequest();
  12. }
  13. else
  14. {// code for IE6, IE5
  15. xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  16. }
  17. xmlhttp.onreadystatechange=function()
  18. {
  19. if (xmlhttp.readyState==4 && xmlhttp.status==200)
  20. {
  21. document.getElementByClass("edit").innerHTML=xmlhttp.responseText;
  22. }
  23. }
  24. xmlhttp.open("GET","edit.php?id="+str,true);
  25. xmlhttp.send();
  26.  
  27. $('.query_table').fadeIn('slow', function() {
  28. });
  29. }
  30.  
  31. </script>


Jak zrobić by działało oraz, by pobierało dane z bazy?