Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Zapytanie UPDATE
head
post
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 5.09.2006

Ostrzeżenie: (0%)
-----


Witam. Moim problemem jest niby proste z pozoru zapytanie o uaktualnianie danych. Mianowicie jeśli ograniczę je do takiej postaci:
  1. <?php
  2. $query = ("UPDATE szczegolyzdarzenia SET OpisZdarzenia='$idOZ' WHERE IDpracownika='$id' ");
  3. ?>

to ono działa dobrze, jednak wywala mi wszystkie dane dla danego IDpracownika. Mi zależy zeby wyrzucić tylko określony rekord i dlatego rozbudowuje zapytanie w następujący sposób:
  1. <?php
  2. $query = ("UPDATE szczegolyzdarzenia SET OpisZdarzenia='$idOZ' WHERE IDpracownika='$id' AND IDszczegoluZdarzenia= '$idSZ'");
  3. ?>

a wtedy już nie działa (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) .. Oczywiście wyświetla, że nie zapytanie nie pobiera zmiennej $idSZ. Musze tu dodać, że zmienna $idSZ działa poprawnie i sprawdzam to w następujący sposób dodając przed zapytaniem:
  1. <?php
  2. $idSZ = $_GET['IDszczegoluZdarzenia'];
  3. echo "IDszczegoluZdarzenia: $idSZ <br/>";
  4. ?>

co powoduje, że zostaje ona wyświetlone na stonce. Tak więc już nie wiem w czym tkwi problem. Może ktoś z was mi pomoże... RATUJCIE!

---------------------------
Poprawiłem literówkę
w temacie.
---
~strife
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
head
post
Post #2





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 5.09.2006

Ostrzeżenie: (0%)
-----


Jeśli chodzi o strukturę tabeli to nalewno jest dobrze! A IDszczegoluZdarzenia jest pierwszą kolumną w tabeli szczegolyzdarzenia. Natomiast błąd jaki mi się teraz wyświetla to:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

Oraz wyświetla się zapytanie z brakującą wartością $idSZ. Natomiast postać zapytania przed wykonaniem to:

  1. <?php
  2. $query = ("SELECT OpisZdarzenia FROM szczegolyzdarzenia WHERE IDpracownika='$id' AND IDszczegoluZdarzenia='$idSZ' ");
  3. ?>


Może jak podam wam cały kod to coś mi pomożecie?!
  1. <?php
  2. $page_title = 'Edycja danych';
  3.  
  4. require_once ('./mysql_connect.php'); 
  5.  
  6. $id = $_COOKIE['IDpracownika'];
  7. $idsz = $_GET['IDszczegoluZdarzenia'];
  8. echo"IDszczegoluZdarzenia: $idsz";
  9.  
  10.  
  11. if (isset($_POST['submitted'])) {
  12.  
  13. $errors = array(); 
  14.  
  15.  
  16. if (empty($_POST['OpisZdarzenia'])) {
  17. $errors[] = 'Zapomniałeś wprowadzić zdarzenia!';
  18. } else {
  19. $idoz = escape_data($_POST['OpisZdarzenia']);
  20. }
  21.  
  22. if (empty($errors)) { 
  23.  
  24.  
  25.  
  26.  
  27. $query = "UPDATE szczegolyzdarzenia SET OpisZdarzenia=$idoz WHERE IDpracownika=$id AN
    D IDszczegoluZdarzenia=$idsz"
    ;
  28. $result = @mysql_query ($query); 
  29. if (mysql_affected_rows() == 1) { 
  30.  
  31.  
  32. echo '<h1 id="mainhead">Edytuj opis zdarzenia</h1>
  33. <p>Opis zdarzenia został zmieniony.</p><p><br /><br /></p>';
  34.  
  35. } else { // W przeciwnym razie.
  36. echo '<h1 id="mainhead">Błąd systemu</h1>
  37. <p class="error">Opis zdarzenia nie został zmieniony. Przepraszamy za utrudnienia.</p>'; // Komunikat publiczny.
  38.  
  39. echo '<p>' . mysql_error() . '<br /><br />Zapytanie: ' . $query . '</p>'; // Komunikat uruchomieniowy.
  40. include ('./stopka.html');
  41. exit();
  42. }
  43.  
  44.  
  45.  
  46. } else { 
  47.  
  48. echo '<h1 id="mainhead">Błąd!</h1>
  49. <p class="error">Wystąpiły następujące błędy:<br />';
  50. foreach ($errors as $msg) { /
  51. echo " - $msg<br />n";
  52. }
  53. echo '</p><p>Spróbuj jeszcze raz.</p><p><br /></p>';
  54.  
  55. } 
  56.  
  57. } 
  58.  
  59.  
  60.  
  61.  
  62. $query = "SELECT OpisZdarzenia FROM szczegolyzdarzenia WHERE IDpracownika=$id AND IDs
    zczegoluZdarzenia=$idsz"
    ;
  63. $result = @mysql_query ($query); 
  64.  
  65. if (mysql_num_rows($result) == 1) { 
  66.  
  67.  
  68. $row5 = mysql_fetch_array ($result, MYSQL_NUM);
  69.  
  70. .
  71. echo '<h2>Edytuj opis</h2>
  72. <form action="edytujZ.php" method="post">
  73. <p>Opis zdarzenia: <input type="text" name="OpisZdarzenia" size="15" maxlength="15" value="' . $row5[0] . '" /></p>
  74. <p><input type="submit" name="submit" value="Wyślij" /></p>
  75. <input type="hidden" name="submitted" value="TRUE" />
  76.  
  77. <input type="hidden" name="id" value="' . $id . '" />
  78. <input type="hidden" name="idsz" value="' . $idsz . '" />
  79. </form>';
  80.  
  81. } else { 
  82. echo '<h1 id="mainhead">Błąd</h1>
  83. <p class="error">Błąd dostępu do strony.</p><p><br /><br /></p>';
  84. }
  85.  
  86. echo ('<br/><a href="zmiany.php" title="Powrót do zmian">Powrót</a>');
  87. include ('./stopka.html');
  88. ?>

A jeśli chodzi o błąd to wygląda następująco:

Zapytanie: UPDATE szczegolyzdarzenia SET OpisZdarzenia='kupa' WHERE (IDpracownika='7' AND IDszczegoluZdarzenia='')

Dodam, że jak wpisze na sztywno IDszczegoluZdarzenia to działa poprawnie. Proszę o pomoc...
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 5.10.2025 - 11:37