Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][mysql]kopiowanie tabeli A do tabeli B
rybak84
post
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 1.11.2006

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


Witam jeszcze raz. Zaznaczam checkboxem rekordy i chcialbym zrobic archiwum czyli skopiowac dane z jednej tabeli do drugiej przez skasowaniem rekordow. ale znowu problem ze nie kopiuje do tablicy archiwum zamowien wartosci zmiennych:

plik zamowienia:
  1. <?php
  2. $wynik=mysql_query("SELECT * FROM zamowienie;") or 
  3. die ("Blad w pytaniu");
  4.  
  5. echo "<table cellpadding=5 border=1 width=100% >";
  6. echo "<tr bgcolor='#CCCCCC'><td><b>Zamawiający</b></td><td><b>Film</b></td>";
  7. echo "<td><b>Cena</b></td><td><b>Data zamówienia</b></td><td><b>Usuń</b></td>";
  8. echo "<td><form action='usun_zamowienie.php' method='POST'></td></tr>";
  9. while ($rekord = mysql_fetch_assoc ($wynik)) 
  10. {
  11.  
  12. $IdZamowienie=$rekord['IdZamowienie'];
  13. $Login= $rekord['Login'];
  14. $Film = $rekord['Film'];
  15. $Cena = $rekord['Cena'];
  16. $Data_Zamowienia = $rekord['Data_Zamowienia'];
  17.  
  18.  
  19. echo "<tr><td width='110'>".$Login."</td><td>".$Film."</td>";
  20. echo "<td>".$Cena."</td><td>".$Data_Zamowienia."</td>";
  21.  
  22.  
  23. echo "<td><input type=hidden name='Login[]' value=".$Login.">"; 
  24. echo "<input type=hidden name='Film[]' value=".$Film.">"; 
  25. echo "<input type=hidden name='Cena[]' value=".$Cena.">"; 
  26. echo "<input type=hidden name='Data_Zamowienia[]' value=".$Data_Zamowienia.">"; 
  27.  
  28. echo "<input type=checkbox name='IdZamowienie[]' value=".$IdZamowienie."></td></tr>";
  29. }
  30. echo "</table>";
  31.  
  32. echo "<table bgcolor='#CCCCCC' align='left' border='2' >";
  33. echo "<tr><td colspan='2' align='left'><input type='submit' value='Usuń zrealizowane zamówienie'>";
  34. echo "</td></tr></form></table>";
  35. ?>


teraz plik usun zamowienie:
  1. <?php
  2. $IdZamowienie=$_POST['IdZamowienie'];
  3. $Login= $_POST['Login'];
  4. $Film = $_POST['Film'];
  5. $Cena = $_POST['Cena'];
  6. $Data_Zamowienia = $_POST['Data_Zamowienia'];
  7.  
  8. ?>
  9.  
  10. <?php
  11.  
  12. if($IdZamowienie==NULL) {
  13. echo '<font size=6>zaznacz stare zamówienie do skasowania</font>';
  14. echo "<font size=6><center><a href='zamowienia.php'>Wróć</a></center></font>";
  15. }
  16.  
  17. else {
  18.  
  19. while ( list( $key, $val ) = each( $IdZamowienie ) ) {
  20.  
  21.  $sel=mysql_query("SELECT * FROM zamowienie WHERE IdZamowienie = $val");
  22. echo ("$key::$valn;");
  23. echo "Login:" .$Login. "<br/><br/>";
  24. echo "Film:" .$Film. "<br/><br/>";
  25. echo "Cena:" .$Cena. "<br/><br/>";
  26. echo "Data_Zamowienia:" .$Data_Zamowienia. "<br/><br/>";
  27.  
  28. $archiwum=mysql_query("INSERT INTO archiwum_zamowien (Zamawiajacy,Film,Cena,Data) VALUES ('$Login','$Film','$Cena','$Data_Zamowienia')WHERE IdZamowienie=$val");
  29.  
  30. $del=mysql_query("DELETE FROM zamowienie WHERE IdZamowienie = $val");
  31.  
  32. }
  33.  
  34.  
  35. echo "<font size='10'><p>Zrealizowane zamówienie zostało usunięte<p></font>";
  36. }
  37. echo "<font size=8><a href='zamowienia.php'>Wróć</a></font>";
  38.  
  39. ?>


czekam na propozycje. thx
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Sedziwoj
post
Post #2





Grupa: Zarejestrowani
Postów: 793
Pomógł: 32
Dołączył: 23.11.2006
Skąd: Warszawa

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


  1. <?php
  2. //Odczyt z bazy danych
  3. require('baza.php');
  4. $wynik = mysql_query('SELECT * FROM zamowienie;') or die ('Blad w pytaniu');
  5. echo '<form action="usun_zamowienie.php" method="POST">':
  6. echo '<table cellpadding="5" border="1" width="100%" >';
  7. echo '<tr bgcolor="#CCCCCC"><td><b>Zamawiający</b></td><td><b>Film</b></td>';
  8. echo '<td><b>Cena</b></td><td><b>Data zamówienia</b></td><td><b>Usuń</b></td>';
  9. echo '</tr>';
  10. while ($rekord = mysql_fetch_assoc ($wynik)) 
  11. {
  12. $IdZamowienie = $rekord['IdZamowienie'];
  13. $Login = $rekord['Login'];
  14. $Film = $rekord['Film'];
  15. $Cena = $rekord['Cena'];
  16. $Data_Zamowienia = $rekord['Data_Zamowienia'];
  17. echo '<tr><td width="110">'.$Login.'</td><td>'.$Film.'</td>';
  18. echo '<td>'.$Cena.'</td><td>'.$Data_Zamowienia.'</td>';
  19. echo '<td><input type=hidden name="Login[]" value='.$Login.'>'; 
  20. echo '<input type="hidden" name="Film[]" value='.$Film.'>'; 
  21. echo '<input type="hidden" name="Cena[]" value='.$Cena.'>'; 
  22. echo '<input type="hidden" name="Data_Zamowienia[]" value='.$Data_Zamowienia.'>'; 
  23. echo '<input type="checkbox" name="IdZamowienie[]" value='.$IdZamowienie.'></td></tr>';
  24. }
  25. echo '</table>';
  26. //Po zaznaczeniu Checkboxa usuwa dane zamówienie
  27. echo '<table bgcolor="#CCCCCC" align="left" border="2" >';
  28. echo '<tr><td colspan="2" align="left"><input type="submit" value="Usuń zrealizowane zamówienie">';
  29. // a po co colspan ? przecież to tabela z jednym wierszem...
  30. echo '</td></tr></table></form>';
  31. echo '<table align="center">';
  32. //tabela wymaga zgrupowania i podziału na komórki
  33. echo '<tr><td>';
  34. echo '<center><font size="6"><a href="index.php">Wróć</a></font><center>';
  35. echo '</td></tr>';
  36. echo '</table>';
  37. ?>


usun_zamowienie.php
  1. <?php
  2. require('baza.php');
  3.  
  4. if(!isset($IdZamowienie)) {
  5. echo "zam: " .$IdZamowienie;//Możesz wyświetlić kiedy tylko jest!
  6. echo '<font size=6>zaznacz stare zamówienie do skasowania</font>';
  7. echo "<font size=6><center><a href='zamowienia.php'>Wróć</a></center></font>";
  8. }
  9. else {
  10.  $IdZamowienie = $_POST['IdZamowienie'];
  11.  //choć przydało by się spr. czy to jest to, to co powinno
  12.  while (list( $key, $val ) = each( $IdZamowienie )) {
  13. $sel = mysql_query('SELECT * FROM zamowienie WHERE IdZamowienie = '.$val) or die('Blad zapytania');
  14. echo "$key::$valn;";
  15. /* A to skąd masz?
  16. * przecież to co przesłałeś z formularza jest w tablicy $_POST
  17. echo "Login:" .$Login[$key]. "<br/><br/>";
  18. echo "Film:" .$Film[$key]. "<br/><br/>";
  19. echo "Cena:" .$Cena[$key]. "<br/><br/>";
  20. echo "Data_Zamowienia:" .$Data_Zamowienia[$key]. "<br/><br/>";
  21. * Co najwyżej tak:
  22. */
  23. $wynik = mysql_fetch_assoc($sel);
  24. echo 'Login:'.$wynik['Login'].'<br/><br/>';
  25. echo 'Film:'.$wynik['Film'].'<br/><br/>';
  26. echo 'Cena:'.$wynik['Cena'].'<br/><br/>';
  27. echo 'Data_Zamowienia:'.$wynik['Data_Zamowienia'].'<br/><br/>';
  28. $archiwum = mysql_query('INSERT INTO archiwum_zamowien (SELECT * FROM zamowienie WHERE IdZamowienie='.$val.')') or die('Nieudane dodanie do archiwum');
  29. /* Tak powinno działać, ale jakby coś było nie tak to:
  30. * $archiwum = mysql_query('INSERT INTO archiwum_zamowien (Zamawiajacy, Film, Cena, Data) VALUES (''.$wynik['Login'].'', ''.$wynik['Film'].'', ''.$wynik['Cena'].'', ''.$wynik['Data_Zamowienia'].'')');
  31. */
  32. $del=mysql_query('DELETE FROM zamowienie WHERE IdZamowienie = '.$val) or die('Nieudana kasacja');
  33. //$i++;
  34.  }
  35.  echo '<font size="10"><p>Zrealizowane zamówienie zostało usunięte<p></font>';
  36. }
  37. echo '<font size="8"><a href="zamowienia.php">Wróć</a></font>';
  38. ?>


Choć nadal jestem nad dodaniem do bazy reguły, po co robić coś samemu jak może być automatycznie?
Ale by mógł ktoś napisać czy w MySQL to jest, bo chwilowo nie chce mi się ściągać nowego manuala (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

Ten post edytował Sedziwoj 4.12.2006, 21:08:21
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: 3.10.2025 - 21:07