Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] proszę o przeanalizowanie kodu
Forum PHP.pl > Forum > Przedszkole
kononowicz
męcze się nad tym juz od dłuzszego czasu. skrypt jest dosc długi ale mam nadzieje ze nie zniecheci az tak bardzo. wyswietlanie rekordów i usuwanie działa ale nie działa mi edycja. prawdopodobnie cos jest nie tak w edycji rekordu. staneło na takim etapie:
  1. <?php
  2. if(mysql_query('update `towary`
  3.  SET `TOWARY` = '.$_GET['TOWARY'].' ,
  4. `KOD` = '.$_GET['KOD'].' ,
  5.  `CENA`= '.$_GET['CENA'].' ,
  6. `ID_DZIALY` = '.$_GET['ID_DZIALY'].'
  7. `WHERE ID` = '.$_GET['edit'].'
  8. '))
  9. ?>


nie wyswietla mi zadnego błędu. a oto cały skrypt baza.php:

  1. <?php
  2. require_once("header.inc");
  3. if($_SESSION['logowanie']="1")
  4. {
  5. require "connection.php";
  6. connection();
  7.  
  8. if(isset($_GET['edit']))
  9.  {
  10.  $zapytanie = 'SELECT `towary`.`ID` , `towary`.`TOWARY` , `towary`.`KOD` , `towary`.`CENA` , `d
    zialy`.`DZIALY` , `dzialy`.`ID` FROM `towary` , `dzialy` WHERE `towary`.`ID`='
    .$_GET['edit'].' AND `towary`.`ID_DZIALY` = `dzialy`.`ID`';
  11.  $wynik = mysql_query($zapytanie);
  12.  echo'<form action="baza.php" method="GET">';
  13.  while($wiersz = mysql_fetch_array($wynik))
  14.  {
  15.  echo'<input type="hidden" class="tekst" name="ID" value="'.$_GET['edit'].'">';
  16.  echo '<p>';
  17.  echo '<label for="towar">wpisz towar:</label>';
  18.  echo'<input type="text" class="tekst" name="TOWARY" value="'.$wiersz['TOWARY'].'">';
  19.  echo '</p>';
  20.  echo '<p>';
  21.  echo '<label for="kod">wpisz kod: </label>';
  22.  echo'<input type="text" class="tekst" name="KOD" value="'.$wiersz['KOD'].'">';
  23.  echo '</p>';
  24.  echo '<p>';
  25.  echo '<label for="cena">wpisz cenę: </label>';
  26.  echo'<input type="text" class="tekst" name="CENA" value="'.$wiersz['CENA'].'">';
  27.  echo '</p>';
  28.  echo '<p>';
  29.  echo '<label for="dzial">wybierz dział: </label>';
  30.  }
  31.  $array = array("1" => "dzial budowlany", "farby", "dzial hydrauliczny","dzial metalowy","dzial sanitarny","inne");
  32.  echo'<select name="ID_DZIALY" class="select">';
  33.  foreach($array as $key => $value){
  34.  if($key == $dzialy)
  35.  {
  36.  $select.$key = "SELECTED";
  37.  }
  38.  echo'<option value='.$key.' "'.$select.$key.'">'.$value.'</option>';
  39.  }
  40. echo'</select>';
  41. echo '</p>';
  42. echo "<br><br>";
  43. echo'<input type="submit" name="edycja" value="edycja" class="przycisk">';
  44. echo'</form>';
  45. $ID_DZIALY = $_GET['ID_DZIALY'];
  46. $ID = $_GET['edit'];
  47. $TOWARY = $_GET['TOWARY'];
  48. $KOD = $_GET['KOD'];
  49. $CENA = $_GET['CENA'];
  50.  
  51. if(isset($_GET['edycja']))
  52.  {
  53.  if(mysql_query('update `towary`
  54.  SET `TOWARY` = '.$_GET['TOWARY'].' ,
  55. `KOD` = '.$_GET['KOD'].' ,
  56.  `CENA`= '.$_GET['CENA'].' ,
  57. `ID_DZIALY` = '.$_GET['ID_DZIALY'].'
  58. `WHERE ID` = '.$_GET['edit'].'
  59. '))
  60.  {
  61.  echo "<div id=uwaga>edycja zakończona powodzeniem</div>";
  62.  }
  63.  else
  64.  {
  65.  echo '<div id=uwaga>edycja nie '.$_GET['KOD'].' powiodła sie</div>';
  66.  }
  67. }}
  68.  
  69.  
  70. if(isset($_GET['del']))
  71.  {
  72.  if(mysql_query('delete from `towary` where ID='.$_GET['del'].' '))
  73.  {
  74. echo "<div id=uwaga>usunięto wpis</div>";
  75.  }
  76. else
  77.  {
  78. echo "<div id=uwaga>nie usunięte</div>";
  79. }
  80.  }
  81.  
  82.  
  83. echo "<br>";
  84.  
  85. $zapytanie="SELECT
  86. `towary`.`ID` ,
  87.  `towary`.`TOWARY` ,
  88. `towary`.`KOD` ,
  89.  `towary`.`CENA` ,
  90. `dzialy`.`DZIALY` FROM `towary` , `dzialy`
  91.  WHERE
  92.  `towary`.`ID_DZIALY` = `dzialy`.`ID`
  93. ORDER BY `towary`.`ID`DESC";
  94.  
  95.  
  96. $wynik=mysql_query($zapytanie);
  97.  
  98. echo "<center>";
  99. if(mysql_num_rows($wynik) > 0) {
  100. echo "<table class=tabela width=99%>";
  101. echo "<tr class=naglowek>";
  102. echo "<td> l.p. </td>";
  103. echo "<td> towary </td>";
  104. echo "<td> kod </td>";
  105. echo "<td> cena [zł] </td>";
  106. echo "<td width=22%> działy </td>";
  107. echo "<td> opcje </td>";
  108. echo "<tr>";
  109.  $a = 1;
  110. while($wiersz = mysql_fetch_array($wynik)) {
  111. if( $a % 2 == 0 )
  112. $class = 'jasna';
  113. else
  114. $class = 'ciemna';
  115. echo '<tr class= '.$class.' >';
  116. echo "<td>".$wiersz['ID']."</td>";
  117. echo "<td>".$wiersz['TOWARY']."</td>";
  118. echo "<td>".$wiersz['KOD']."</td>";
  119. echo "<td>".$wiersz['CENA']."</td>";
  120. echo "<td>".$wiersz['DZIALY']."</td>";
  121. echo '<td>
  122.  <a href="baza.php?del='.$wiersz['ID'].'">usuń</a>
  123.  <a href="baza.php?edit='.$wiersz['ID'].'">edytuj</a>
  124.  </td>';
  125. echo "</tr>";
  126. $a++;
  127. }
  128. echo "</table><br>";
  129. }
  130. }
  131. else
  132. {
  133. echo("<br><br><br><br><div id=uwaga>Błąd autoryzacji test</div>");
  134. }require_once("menu.inc");
  135. ?>


moja tabela mysql:
ID int(255) auto_increment
TOWARY varchar(255)
ID_DZIALY int(10)
KOD varchar(255)
CENA float
maryaan
Cytat(kononowicz @ 31.01.2007, 03:45:14 ) *
prawdopodobnie cos jest nie tak w edycji rekordu
prawdopodobnie masz jakis blad... gdybys PRZYPADKIEM natknal sie na przyklejony Temat: Najczestsze bledy to bys tam znalazl podpowiedz do czego sluzy mysql_error()
kononowicz
Cytat(maryaan @ 31.01.2007, 08:23:52 ) *
prawdopodobnie masz jakis blad... gdybys PRZYPADKIEM natknal sie na przyklejony Temat: Najczestsze bledy to bys tam znalazl podpowiedz do czego sluzy mysql_error()


mysql_error(); nic nie pokazał ale mam pytanie

jak zrobić zeby wyswietlić tabelke a jedna kolumna było pobierane z innej tabeli
czyli u mnie tabela `towary` zawiera spis towarów
a kolumna ID_DZIALY (int) powinna przyporządkować nazwy działów z tabeli `dzialy`

jak to sie robi?? czy tak jak ja zrobiłem questionmark.gif

czyli
  1. <?php
  2. ... WHERE `towary`.`ID_DZIALY` = `dzialy`.`ID`
  3. ?>


czy za pomoca JOIN questionmark.gif czy czegos innego questionmark.gif?
EDIT:
tak powinno byc??
  1. <?php
  2. $zapytaniea="SELECT * FROM
  3. `towary` LEFT JOIN `dzialy` ON (`dzialy`.`ID` = `towary`.`ID_DZIALY`)";
  4. ?>


i co zrobic zeby dane o działach wyciagał z tabeli `dzialy` a nie z arraya:
  1. <?php
  2. $array = array("1" => "dzial budowlany", "farby", "dzial hydrauliczny","dzial metalowy","dzial sanitarny","inne");
  3. ?>
Wykrywacz
Tzw. łączenie tabel.

  1. SELECT tabela1.id, tabela2.nazwa FROM tabela1, tabela2 WHERE tabela1.id=tabela2.id


bądź zagnieżdzonym

  1. SELECT id FROM tabela1 WHERE id IN (SELECT id FROM tabela2 WHERE nazwa LIKE 'nazwa')


w zależności co potrzebujesz

no chyba że nie o to ci chodzi, ale w takim razie jak dlamnie pytanie jest postawione nie jasno
kononowicz
dzieki za pomoc ... poradziłem sobie ... cały dzien z głowy tongue.gif

jeszcze tylko musze dojsc zcemu akurat na tej stronie nie działa mi <a href="?logout">Wyloguj</a> :/ ktory jest w pliku header.inc dołączonym przez skrypt w index.php
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.