Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php][sql] problem z formularzem
kozioł
post 18.06.2007, 09:19:09
Post #1





Grupa: Zarejestrowani
Postów: 209
Pomógł: 0
Dołączył: 9.12.2006

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


Witam

mam taki problem:

Mam formularz formularz.php który przekazuje zmienne do skryptu ogólny.php

tam includuje dwa skrypty baza2.php i excel.php , pierwszy wyświetla dane w postaci tabelki na stronie drugi przenosi te dane do excel-a.

Jednak jak w formularzy nacisnę przycisk szukaj , to automatycznie otwiera mi się plik excelowy a nie najpierw strona baza2.php , a potem powinno być tak że jak na niej kliknę link do excel.php to powinno przenieść te dane excela.

Czemu tak jest?

dzieki za pomoc
pozdrawiam
Go to the top of the page
+Quote Post
kossa
post 18.06.2007, 11:38:42
Post #2





Grupa: Zarejestrowani
Postów: 1 165
Pomógł: 9
Dołączył: 9.04.2002
Skąd: Toruń

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


może jakiś kod dla przykładu podasz...


--------------------
Go to the top of the page
+Quote Post
kozioł
post 20.06.2007, 11:29:48
Post #3





Grupa: Zarejestrowani
Postów: 209
Pomógł: 0
Dołączył: 9.12.2006

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


zaczyna sie prostym formularzem :
formularz.php
  1. <?php
  2. <form action = "ogolny.php" method = "POST">
  3.  
  4. <table border="2"cellspacing="1" cellspacing="3"
  5. bgcolor="#3888853535" align="center">
  6. <br>
  7. <br>
  8. <br>
  9. <br>
  10. </br>
  11. </br>
  12. </br>
  13. </br>
  14. <tr>
  15. <td bgcolor="999999"><h3>Rodzaj bazy</h3></td>
  16. <td bgcolor="FFFFFF">
  17. <select name="rodzaj">
  18. <option value="all">Wszystkie</option>
  19. <option value="1">Neo</option>
  20. <option value="2">coś</option>
  21. <option value="3">cosik</option>
  22. </select>
  23. </td>
  24. </tr>
  25. <tr>
  26. </td>
  27. </tr>
  28. </table>
  29. <center>
  30. <br>
  31. <input type="submit" name="Submit" value= "Szukaj">
  32. </br>
  33. ?>



potem jest plik ogólny.php
  1. <?php
  2. include('baza2.php');
  3.  
  4. include('excel.php');
  5. ?>


a następnie powinnien otworzyć się plik baza2.php
  1. <html>
  2. <head>
  3. <title>
  4. Zawartosc bazy
  5. </title>
  6. </head>
  7. <body background="C:Program FilesVertrigoServwwwBAZYDANCYH_plikilgren006.jpg" bgproperties="fixed">
  8. <form action = "rez.php" method = "POST">
  9. <a href="excel.php"><h3>excel</h3></a><h2>
  10. <center>
  11. <H1>ZAWARTOŚĆ BAZY SQL</H1>
  12.  
  13. <?php
  14.  
  15.  
  16.  
  17. $conn = mysql_connect("localhost", "root", "vertrigo") or die(mysql_error());
  18. $db = mysql_select_db("baza1",$conn) or die ("nie mogę połączyć z bazą");
  19. $rodzaj=$_POST['rodzaj'];
  20. $typ=$_POST['typ'];
  21. $login=$_SESSION['user_logged'];
  22. if($rodzaj=='all')
  23. {
  24. $query = "SELECT * FROM neo WHERE rodzaj != '' and rezultat = '' ";
  25. }
  26. else
  27. {
  28.  
  29. $query = "SELECT * FROM neo WHERE rodzaj = '$rodzaj' and rezultat ='' ";
  30. }
  31. $result = mysql_query($query) or die("Wykonanie zapytania nie powiodło się: ".mysql_error());
  32.  
  33.  
  34.  
  35. echo
  36.  
  37. <TABLE BORDER="2">
  38. <TR>
  39. <TH>rodzaj bazy</TH>
  40. <TH>odbiorca</TH>
  41. <TH>rezultat</TH>
  42. </TR>
  43. ';
  44. while ($row = mysql_fetch_array($result))
  45. {
  46. echo '<TR>';
  47.  
  48. echo '<TD>' .$row['rodzaj']. '</TD>';
  49. echo '<TD>' .$row['odbiorca']. '</TD>';
  50. echo '<TD>
  51. <SELECT NAME="' .$row['klient']. '">
  52. <OPTION value=""></option>
  53. <OPTION value="Pozytywny">Pozytywne</option>
  54. <OPTION value="Negatywny">Negatywne</option>
  55. <OPTION value="Nieskuteczny">Nieskuteczne</option>
  56. </SELECT>
  57. </TD>';
  58. echo '</TR>';
  59. }
  60.  
  61. echo '<input type="hidden" name="rodzaj" value="' .$rodzaj. '" /><input type="hidden" name="typ" value="' .$typ. '" />';
  62. echo '</TABLE>';
  63. echo '<input type="submit" value="Zapisz">';
  64.  
  65.  
  66.  
  67. ?>
  68. <a href="formularz.php"><h3>POWRÓT</h3></a><h2>
  69.  
  70. </form>
  71. </CENTER>
  72. </BODY>
  73. </HTML>


a potem jak klikne w link do skryptu excel.php na stronie baza2.php

powinien otowrzyc sie ten plik

excel.php

  1. <?php
  2.  
  3.  
  4.  
  5. $file_type = "vnd.ms-excel";
  6. $file_ending = "xls";
  7. header("Content-Type: application/$file_type");
  8. header("Content-Disposition: attachment; baza.$file_ending");
  9. header("Pragma: no-cache");
  10. header("Expires: 0");
  11.  
  12.  
  13. $now_date = date('d-m-Y H:i');
  14. $title = "Baza $now_date";
  15.  
  16.  
  17. /* Database Connection (Alternative- for mysql_fetch_array) */
  18. $conn = mysql_connect("localhost", "root", "vertrigo") or die(mysql_error());
  19. $result = mysql_select_db("baza1",$conn) or die ("nie mogę poł&plusmn;czyć z baz&plusmn;");
  20.  
  21. $rodzaj=$_POST['rodzaj'];
  22.  
  23.  
  24.  
  25.  
  26. $sql = "SELECT * FROM neo WHERE rodzaj = '$rodzaj' ";
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37. $result = @mysql_query($sql,$conn)
  38. or die(mysql_error());
  39. //end of connection code
  40.  
  41. //define separator (defines columns in excel)
  42. $sep = "t";
  43.  
  44. //print excel header with timestamp:
  45. echo("$titlen");
  46.  
  47. //start of printing column names
  48. for ($i = 0; $i < mysql_num_fields($result); $i++) {
  49. echo mysql_field_name($result,$i) . "t";
  50. }
  51. print("n");
  52. //end of printing column names
  53.  
  54. //start while loop to get data
  55. /*
  56. note: the following while-loop was taken from phpMyAdmin 2.1.0.
  57. --from the file "lib.inc.php".
  58. */
  59. $i = 0;
  60. while($row = mysql_fetch_row($result))
  61. {
  62. //set_time_limit(60); // HaRa
  63. $schema_insert = "";
  64. for($j=0; $j<mysql_num_fields($result);$j++)
  65. {
  66. if(!isset($row[$j]))
  67. $schema_insert .= "NULL".$sep;
  68. elseif ($row[$j] != "")
  69. $schema_insert .= "$row[$j]".$sep;
  70. else
  71. $schema_insert .= "".$sep;
  72. }
  73. $schema_insert = str_replace($sep."$", "", $schema_insert);
  74. $schema_insert .= "t";
  75. print(trim($schema_insert));
  76. print "n";
  77. $i++;
  78. }
  79. return (true);
  80.  
  81. ?>



lecz tak się nie dzieje , przez includowanie , plik excel otwiera się już jak kliknę na przycisk szukaj w formularzu , a includowanie musi być aby przekazać zmienne z formularza do skryptu baza2.php i excel.php



nie nie daję sobie rady z tym problemem ,

walcze już kilka dni , i nic mi nie wychodzi , nie mogę za przeproszeniem głupiej tabelki ze strony przesłać do excela. Już nie mam pomysłu jak to inaczej zrobić.

Cały czas mam tak że jak nacisne szukaj w formularzu to otwiera sie plik excelowy , który przedastwaia

stronę baza2.php(nie wiem czemu) , zamiast właśnie wykłej strony baza2.php.

może wiecie jak rozwiązać ten problem , amoże ktos robił podobne rozwiązania u siebie. ?

dziękuję z góry za pomoc


pozdrawiam

Ten post edytował kozioł 21.06.2007, 08:37:24
Go to the top of the page
+Quote Post
uli
post 20.06.2007, 12:19:27
Post #4





Grupa: Zarejestrowani
Postów: 318
Pomógł: 6
Dołączył: 27.01.2005

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


Z ogolny.php usuń

  1. <?php
  2. include('excel.php');
  3. ?>


biggrin.gif:D


--------------------
Prawo Wylera:
Nie ma rzeczy niemożliwych dla kogoś, kto nie musi ich zrobić sam.
Go to the top of the page
+Quote Post
kozioł
post 20.06.2007, 13:19:28
Post #5





Grupa: Zarejestrowani
Postów: 209
Pomógł: 0
Dołączył: 9.12.2006

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


ale w takim wypadku do skryptu excel.php nie dotrze wartość z pliku formularz.php
Go to the top of the page
+Quote Post
uli
post 20.06.2007, 13:26:27
Post #6





Grupa: Zarejestrowani
Postów: 318
Pomógł: 6
Dołączył: 27.01.2005

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


Jak to nie?

Jedyne co przesyłasz z kwestionariusza to $rodzaj

A co masz w baza2.php?

  1. <?php
  2. $rodzaj=$_POST['rodzaj'];
  3.  
  4. echo '<input type="hidden" name="rodzaj" value="' .$rodzaj. '" /><input type="hidden" name="typ" value="' .$typ. '" />';
  5. ?>


Jak na moje dojdzie...


--------------------
Prawo Wylera:
Nie ma rzeczy niemożliwych dla kogoś, kto nie musi ich zrobić sam.
Go to the top of the page
+Quote Post
kozioł
post 20.06.2007, 14:14:47
Post #7





Grupa: Zarejestrowani
Postów: 209
Pomógł: 0
Dołączył: 9.12.2006

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


jak tak zrobię tak jak mówiłeś to do baza2.php , wartość "rodzaj" dojdzie , i dochodzi sprawdziełm

ale juz nie dojdzie ta wartość do pliku skryptu excel.php , i nie dochodzi bo jak klikne w link ze skryptu baza2.php kótry odwołuje sie do excel.php to wyświetlaję sie tylko nagłówki z bazy bez wartości , czyli zmienna jest pusta. I się nie dziwię bo w tym wypadku jak usunąłem z pliku ogólny.php includowanie 'excel.php' to nie ma juz nigdzie przekazywania zmiennej z formularza do pliku excel.php

i właśnie z tym sie męczę , przecież musi być jakiś sposób na to rowiązanie , na nie jednej stronie widzaiłem motyw gdzie była wyświetlana zawrtość bazy na stronie i można ją było wysłać do excela przyciskając jakiś przycisk.
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 15:54