Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][MySQL][PHP] Nieaktywne pole
Forum PHP.pl > Forum > Przedszkole
ufoxxx
Siema
Wyskakuje mi błąd: Undefined index: TerminZalatwienia in C:\wamp\www\poczta\kierownik.php on line 53
Kożystam ze skryptu, który wyłącza pole formularza jeżeli nie jest potrzebne.
Nie wiem jak to przerobić, żeby działało bez błędu.
  1. <?php
  2.  
  3. if(!isset($_SESSION['Login']) )
  4. {
  5. header("Location: login.php");
  6. }
  7. ?>
  8. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  9. <html xmlns="http://www.w3.org/1999/xhtml">
  10. <head>
  11. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  12. <link href="dist/css/bootstrap.min.css" rel="stylesheet">
  13. <link href="dist/css/bootstrap-theme.min.css" rel="stylesheet">
  14. <link href="css/theme.css" rel="stylesheet">
  15. <link rel="stylesheet" href="css/jquery-ui.css" type="text/css" media="all" />
  16. <script type="text/javascript" src="js/jquery.js"></script>
  17. <script type="text/javascript" src="js/jquery-ui.js"></script>
  18. <title>Kierownik</title>
  19. <script type="text/javascript">
  20. $(document).ready(function()
  21. {
  22. var TerminZalatwienia1Opts =
  23. {
  24. dateFormat: 'yy-mm-dd',
  25. changeMonth: false,
  26. changeYear: false,
  27. showButtonPanel: false,
  28. showAnim: 'show'
  29. };
  30. $("#TerminZalatwienia").datepicker(TerminZalatwienia1Opts);
  31. });
  32. </script>
  33. <script type="text/javascript">
  34. function s(){
  35. if(document.getElementById("radio1").checked==true)document.getElementById("TerminZalatwienia").disabled=false;
  36. else document.getElementById("TerminZalatwienia").disabled=true;
  37.  
  38. if(document.getElementById("radio2").checked==true)document.getElementById("TerminZalatwienia2").disabled=false;
  39. else document.getElementById("TerminZalatwienia2").disabled=true;
  40. }
  41. </script>
  42. </head>
  43. <body role="document">
  44. <?php
  45. if(isset($_POST['update']))
  46. {
  47. include ("db_fns.php");
  48. db_connect();
  49.  
  50. $IdOdebrane = $_POST['IdOdebrane'];
  51. $TerminZalatwienia = $_POST['TerminZalatwienia'];
  52. $skan = $_POST['skan'];
  53. $pracownik = $_POST['pracownik'];
  54.  
  55. $IdOdebrane = mysql_real_escape_string($IdOdebrane);
  56. $TerminZalatwienia = mysql_real_escape_string($TerminZalatwienia);
  57. $skan = mysql_real_escape_string($skan);
  58.  
  59. $sql = "UPDATE odbierzpoczte SET TerminZalatwienia = '$TerminZalatwienia', skan = '$skan', pracownik = '$pracownik', status='wysyłka' WHERE IdOdebrane = '$IdOdebrane'" ;
  60.  
  61. $ok = mysql_query($sql);
  62. if ($ok === false) die('nie można było dodać danych do bazy ' .mysql_error());
  63. echo "Baza została uzupełniona\n";
  64. echo '<form id="form1" name="form1" method="post" action="kierownik.php">
  65. <input type="submit" class="btn btn-default" value="Powrót" />
  66. </form>';
  67. mysql_close(db_connect());
  68. }
  69. else
  70. {
  71. ?>
  72. <nav class="navbar navbar-inverse navbar-fixed-top">
  73. <div class="container">
  74. <div class="navbar-header">
  75. <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
  76. <span class="sr-only"></span>
  77. <span class="icon-bar"></span>
  78. <span class="icon-bar"></span>
  79. <span class="icon-bar"></span>
  80. </button>
  81. </div>
  82. <div id="navbar" class="navbar-collapse collapse">
  83. <ul class="nav navbar-nav">
  84. <li><a href="index.php">Strona główna</a></li>
  85. <li class="active"><a href="pocztaodebrana.php">Poczta odebrana</a></li>
  86. <li><a href="pocztawyslana.php">Poczta wysłana</a></li>
  87. <li><a href="daneadministracyjne.php">Dane administracyjne</a></li>
  88. <li><a href="raporty.php">Raporty</a></li>
  89. <li><a href="faktury.php">Faktury</a></li>
  90. </ul>
  91. </div><!--/.nav-collapse -->
  92. </div>
  93. </nav>
  94. <div class="container theme-showcase" role="main">
  95. <div class="row">
  96. <div class="col-md-13">
  97. <table class="table">
  98. <thead>
  99. <tr>
  100. <td width="89%"><?php echo "Witaj " .$_SESSION['Login']; ?>
  101. <td width="11%" align="right">
  102. <form id="form1" name="form1" method="post" action="logout.php">
  103. <input type="submit" name="wyloguj" id="wyloguj" value="Wyloguj" class="btn btn-default" /></form>
  104. </tr>
  105. </thead>
  106. </table>
  107. </div>
  108. </div>
  109. <div class="row">
  110. <div class="col-md-8">
  111. <form id="form1" name="form1" method="post" action="pocztaodebrana.php">
  112. <input type="submit" value="Powrót" class="btn btn-default" /></form>
  113. <br />
  114. <form name="formularz" role="form" method="post" action="<?php $_PHP_SELF ?>">
  115.  
  116. <div class="form-group">
  117. <label for="IdOdebrane">IdO</label>
  118. <input name="IdOdebrane" type="text" id="IdOdebrane" class="form-control">
  119. </div>
  120.  
  121. <div class="form-group">
  122. <label for="IdOdebrane">Termin załatwienia sprawy</label><br />
  123. <input id="radio1" type="radio" name="forma" onclick="s()">TAK
  124. <input id="radio2" type="radio" name="forma" onclick="s()">NIE
  125.  
  126. <input name="TerminZalatwienia" id="TerminZalatwienia" class="form-control" />
  127. </div>
  128.  
  129. <div class="form-group">
  130. <label for="skan">Skan</label>
  131. <select name="skan" id="skan" class="form-control">
  132. <option value="tak">TAK</option>
  133. <option value="nie">NIE</option>
  134. </select>
  135. </div>
  136.  
  137. <div class="form-group">
  138. <label for="pracownik">Kto odebrał</label>
  139. <select name="pracownik" id="pracownik" class="form-control">
  140. <?php
  141. include ("db_fns.php");
  142. db_connect();
  143. $query = 'SELECT pracownik FROM pracownicy GROUP BY pracownik';
  144. $results = mysql_query($query) or die(mysql_error());
  145. while($row = mysql_fetch_assoc($results))
  146. {
  147. echo '<option>';
  148. foreach($row as $value)
  149. echo $value;
  150. echo "\n";
  151. echo '</option>';
  152. }
  153.  
  154. ?></select>
  155. </div>
  156.  
  157. <input name="update" type="submit" id="update" value="Dodaj" class="btn btn-default">
  158. </form>
  159. </div>
  160. </div>
  161. <?php
  162. include'tabelakierownik.php';
  163. ?>
  164. </div> <!-- /container -->
  165. <?php
  166. }
  167. ?>
  168. </body>
  169. </html>
Deusx
To nie błąd tylko notatka, nie ma takiego indexu w tablicy. Zdefiniuj bądź sprawdź przed akcją czy istnieje
ufoxxx
No własnie jest puste jak jest zaznaczone "nie" i nie wiem jak to ominąć...
Deusx
Przed wykonaniem akcji musisz sprawdzić czy ona istnieje, dla przykładu

jeżeli
zmienna A została pominięta [skrypt dopuszcza taką możliwość]
zmienna B = 123
zmienna C = 456

jeżeli dojdzie do aktualizadcji bazy danych, to nie będzie miał A, B i C w zapytaniu tylko B i C i to jest powód notatki.

Po co robisz mysql_real_escape_string skoro jest pusty ?
Po co przypisujesz globalną do zmiennej skoro jest pusta?
ufoxxx
Nie wiem czy dobże zrobiłem, ale mam taki błąd:
Undefined index: TerminZalatwienia in C:\wamp\www\poczta\kierownik.php on line 53

  1. <?php
  2. if(isset($_POST['update']))
  3. {
  4. include ("db_fns.php");
  5. db_connect();
  6.  
  7. $IdOdebrane = $_POST['IdOdebrane'];
  8. $TerminZalatwienia = $_POST['TerminZalatwienia'];
  9. $skan = $_POST['skan'];
  10. $pracownik = $_POST['pracownik'];
  11. if (($TerminZalatwienia == '')) {
  12. $A = 'brak';
  13. $TerminZalatwienia = $A;
  14. //echo '<p style="color: red;">Nie wypełniłeś jednego z pól</p>';
  15. }
  16. else {
  17.  
  18. $IdOdebrane = mysql_real_escape_string($IdOdebrane);
  19. $TerminZalatwienia = mysql_real_escape_string($TerminZalatwienia);
  20. $skan = mysql_real_escape_string($skan);
  21.  
  22. $sql = "UPDATE odbierzpoczte SET TerminZalatwienia = '$TerminZalatwienia', skan = '$skan', pracownik = '$pracownik', status='wysyłka' WHERE IdOdebrane = '$IdOdebrane'" ;
nospor
$TerminZalatwienia = isset($_POST['TerminZalatwienia']) ? $_POST['TerminZalatwienia'] : null;

A do zapytania jesli $TerminZalatwienia jest NULL to masz go nie wkladac. No chyba, ze chcesz zaktualizowac na nic, to wkladaj smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.