Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] jak usunąć zmienne usnet?
Forum PHP.pl > Forum > Przedszkole
smarcz
Plik głowny index.php (fragmenty):
  1. <?
  2. ?>

...
  1. <?
  2. switch($action){
  3. case "d3";
  4. dodaj_2();
  5. naglowek_3();
  6. pomoc_3();
  7. krok_3($e_1, $e_2, $e_3, $e_4, $e_5, $e_6, $e_7, $e_8, $e_9, $e_10, $e_11, $e_12, $e_13,
  8.  $e_14, $e_15, $e_16, $e_17, $e_18, $e_19, $e_20, $e_21,
  9.  $o_1, $o_2, $o_3, $o_4, $o_5, $o_6, $o_7, $o_8, $o_9, $o_10,
  10.  $o_11, $o_12, $o_13, $o_14, $o_15, $o_16, $o_17, $info1, $info2, $info3, 
  11.  $info4, $info5, $info6, $info7, $info8, $info9, $info10,
  12.  $info11, $info12, $info13, $info14, $info15, $info16, $info17,
  13.  $info1_1, $info2_1, $info3_1, $info4_1, $info5_1, $info6_1, $info7_1, $info8_1, 
  14.  $info9_1, $info10_1, $info11_1, $info12_1, $info13_1, $info14_1, $info15_1, $info16_1,
  15.  $info17_1, $opis_1, $zdj_p1, $rozszezony, $opis_2, $zdj_p2);
  16. break;
  17. case "d4";
  18. dodaj_3();
  19. naglowek_4();
  20. pomoc_4();
  21. krok_4($e_1, $e_2, $e_3, $e_4, $e_5, $e_6, $e_7,
  22.  $o_1a, $o_2a, $o_3a, $o_4a, $o_5a, $o_6a, 
  23.  $info1a, $info2a, $info3a, $info4a, $info5a, $info6a, 
  24.  $info1_1a, $info2_1a, $info3_1a, $info4_1a, $info5_1a, $info6_1a, 
  25.  $opis_3);
  26. break;
  27.  
  28. }
  29. ?>


fragment kroku_3
  1. <?
  2. function krok_3($e_1, $e_2, $e_3, $e_4, $e_5, $e_6, $e_7, $e_8, $e_9, $e_10, $e_11, $e_12, $e_13,
  3.  $e_14, $e_15, $e_16, $e_17, $e_18, $e_19, $e_20, $e_21,
  4.  $o_1, $o_2, $o_3, $o_4, $o_5, $o_6, $o_7, $o_8, $o_9, $o_10,
  5.  $o_11, $o_12, $o_13, $o_14, $o_15, $o_16, $o_17, $info1, $info2, $info3, 
  6.  $info4, $info5, $info6, $info7, $info8, $info9, $info10,
  7.  $info11, $info12, $info13, $info14, $info15, $info16, $info17,
  8.  $info1_1, $info2_1, $info3_1, $info4_1, $info5_1, $info6_1, $info7_1, $info8_1, 
  9.  $info9_1, $info10_1, $info11_1, $info12_1, $info13_1, $info14_1, $info15_1, $info16_1,
  10.  $info17_1, $opis_1, $zdj_p1, $rozszezony, $opis_2, $zdj_p2){
  11. ?>
  12. <FORM name="f1" METHOD="POST" ACTION="<?php echo $PHP_SELF ?>">
  13. <INPUT TYPE="HIDDEN" NAME="action" VALUE="d4">
  14. <!--### TABELA NR 1 ################################################################
    ###-->
  15.  
  16. <!--### PODPOWIEDZ ###-->
  17. <div class="theme-main"><div class="theme">
  18. <!--Tytuł podpowiedzi-->
  19. wstaw tekst</div></div><br clear="all">
  20.  
  21. <table width="100%" cellspacing="0" cellpading="0">
  22. <tbody>
  23. <tr>
  24. <td width="250" align="center" class="k2_ramka"><strong>Opcja</strong></td>
  25. <td width="50" align="center" class="k2_ramka"><strong>TAK</strong></td>
  26. <td width="50" align="center" class="k2_ramka"><strong>NIE</strong></td>
  27. <td width="30" align="center" class="k2_ramka"><img src="ikony/i4.gif" alt="" width="30" height="30" border="0"></td>
  28. <td align="left" class="k2_ramka k2_r">
  29. <!--#####################################-->
  30. <table cellspacing="0" cellpading="0">
  31. <tr>
  32. <td><strong>Dodatkowy opis zawarty w</strong></td>
  33. <td><img src="ikony/i4.gif" alt="" width="30" height="30" border="0"></td>
  34. </tr>
  35. </table>
  36. <!--#####################################-->
  37. </td>
  38. </tr>
  39.  
  40. <tr>
  41. <td width="250" align="right" class="k2_ramka">wstaw tekst</td>
  42. <?
  43. if($o_1=="nie"){
  44. ?>
  45. <td width="50" align="center" class="k2_ramka"><input type="radio" name="o_1" value="tak"></td>
  46. <td width="50" align="center" class="k2_ramka"><input type="radio" name="o_1" value="nie" checked></td>
  47. <?
  48. }
  49. else{?>
  50. <td width="50" align="center" class="k2_ramka"><input type="radio" name="o_1" value="tak" checked></td>
  51. <td width="50" align="center" class="k2_ramka"><input type="radio" name="o_1" value="nie"></td>
  52. <?}?>
  53. <?
  54. if($info1==1){
  55. ?>
  56. <td width="30" align="center" class="k2_ramka"><input type="checkbox" name="info1" value="1" checked onclick="this.form.info1_1.disabled=!this.form.info1.checked;"></td>
  57. <?
  58. if($e_1==1){
  59. ?>
  60. <td align="left" class="table_error k2_r"><input type="text" name="info1_1" style="width: 100%;"></td>
  61. <?
  62. }
  63. else{
  64. ?>
  65. <td align="left" class="k2_ramka k2_r"><input type="text" name="info1_1" value="<?echo $info1_1;?>" style="width: 100%;"></td>
  66. <?
  67. }
  68. ?>
  69. <?
  70. }
  71. else{
  72. ?>
  73. <td width="30" align="center" class="k2_ramka"><input type="checkbox" name="info1" value="1" onclick="this.form.info1_1.disabled=!this.form.info1.checked;"></td>
  74. <?
  75. }?>
  76. <?
  77. if(!$info1==1){
  78. ?>
  79. <td align="left" class="k2_ramka k2_r"><input type="text" name="info1_1" style="width: 100%;" disabled="disabled"></td>
  80. <?
  81. }
  82. ?>
  83. </tr>


fragment pliku sprawdzającego poprawność dodaj_3() z zastosowaniem funkcji usuwającej zmienne unset

  1. <?
  2. function dodaj_3(){
  3.  
  4. /*-----------------------------------------------------------
  5. #  Określam zmienne globalne  #
  6. #  przekazywane z formularza  #
  7. #  krok_3 #
  8. -----------------------------------------------------------*/
  9. GLOBAL $id;//numer id przekazywany w sesji
  10.  
  11. //OPCJE RADIO OKREŚLAJĄCE STANDARD OBIEKTU
  12. GLOBAL $o_1, $o_2, $o_3, $o_4, $o_5, $o_6, $o_7, $o_8, $o_9, $o_10,
  13.  $o_11, $o_12, $o_13, $o_14, $o_15, $o_16, $o_17;
  14.  
  15. GLOBAL $info1, $info2, $info3, $info4, $info5, $info6, $info7, $info8, $info9, $info10,
  16.  $info11, $info12, $info13, $info14, $info15, $info16, $info17;
  17.  
  18. GLOBAL $info1_1, $info2_1, $info3_1, $info4_1, $info5_1, $info6_1, $info7_1, $info8_1, 
  19.  $info9_1, $info10_1, $info11_1, $info12_1, $info13_1, $info14_1, $info15_1, $info16_1,
  20.  $info17_1;
  21. ?>

...
  1. <?php
  2. //Sprawdzam które pola obowiązkowe nie zostały wypełnione
  3. $emptyfields=0;
  4.  
  5. if($info1==1) { if(empty($info1_1)) { $emptyfields++; $e_1=1;} }
  6. if($info2==1) { if(empty($info2_1)) { $emptyfields++; $e_2=1;} }
  7. if($info3==1) { if(empty($info3_1)) { $emptyfields++; $e_3=1;} }
  8. if($info4==1) { if(empty($info4_1)) { $emptyfields++; $e_4=1;} }
  9. if($info5==1) { if(empty($info5_1)) { $emptyfields++; $e_5=1;} }
  10. if($info6==1) { if(empty($info6_1)) { $emptyfields++; $e_6=1;} }
  11. ?>

i na koniec po wykonaniu wszystkich operacji dopisaniu do bazy MySQL używam funkcji unset do mazania zmiennych
  1. <?php
  2. unset($o_1);
  3. unset($info1);
  4. unset($info1_1);
  5. ?>

wywołuje fukcję krok_4() i pola o tych samych nazwach są wypełnione

i fragment kodu krok_4

  1. <?
  2. function krok_4($e_1, $e_2, $e_3, $e_4, $e_5, $e_6, $e_7, 
  3.  $o_1, $o_2, $o_3, $o_4, $o_5, $o_6, 
  4.  $info1, $info2, $info3, $info4, $info5, $info6, 
  5.  $info1_1a, $info2_1a, $info3_1a, $info4_1a, $info5_1a, $info6_1a, 
  6.  $opis_3){
  7. ?>
  8. <FORM name="f1" METHOD="POST" ACTION="<?php echo $PHP_SELF ?>">
  9. <INPUT TYPE="HIDDEN" NAME="action" VALUE="d5">
  10. <!--### TABELA NR 1 ################################################################
    ###-->
  11.  
  12. <!--### PODPOWIEDZ ###-->
  13. <div class="theme-main"><div class="theme">
  14. <!--Tytuł podpowiedzi-->
  15. wstaw tekst</div></div><br clear="all">
  16.  
  17. <table width="100%" cellspacing="0" cellpading="0">
  18. <tbody>
  19. <tr>
  20. <td width="250" align="center" class="k2_ramka"><strong>Opcja</strong></td>
  21. <td width="50" align="center" class="k2_ramka"><strong>TAK</strong></td>
  22. <td width="50" align="center" class="k2_ramka"><strong>NIE</strong></td>
  23. <td width="30" align="center" class="k2_ramka"><img src="ikony/i4.gif" alt="" width="30" height="30" border="0"></td>
  24. <td align="left" class="k2_ramka k2_r">
  25. <!--#####################################-->
  26. <table cellspacing="0" cellpading="0">
  27. <tr>
  28. <td><strong>Dodatkowy opis zawarty w</strong></td>
  29. <td><img src="ikony/i4.gif" alt="" width="30" height="30" border="0"></td>
  30. </tr>
  31. </table>
  32. <!--#####################################-->
  33. </td>
  34. </tr>
  35.  
  36. <tr>
  37. <td width="250" align="right" class="k2_ramka">wstaw tekst</td>
  38. <?
  39. if($o_1=="nie"){
  40. //wstaw opcje nie
  41. ?>
  42. <td width="50" align="center" class="k2_ramka"><input type="radio" name="o_1" value="tak"></td>
  43. <td width="50" align="center" class="k2_ramka"><input type="radio" name="o_1" value="nie" checked></td>
  44. <?
  45. }
  46. else{
  47. //wstaw opcje tak
  48. ?>
  49. <td width="50" align="center" class="k2_ramka"><input type="radio" name="o_1" value="tak" checked></td>
  50. <td width="50" align="center" class="k2_ramka"><input type="radio" name="o_1" value="nie"></td>
  51. <?
  52. }
  53.  
  54. if($info1a==1){
  55. //wstaw przycisk włączony
  56. ?>
  57. <td width="30" align="center" class="k2_ramka"><input type="checkbox" name="info1" value="1" onclick="this.form.info1_1.disabled=!this.form.info1.checked;" checked></td>
  58. <?
  59. if($e_1==1){
  60. //wstaw info włączone
  61. ?>
  62. <td align="left" class="table_error k2_r"><input type="text" name="info1_1" style="width: 100%;"></td>
  63. <?
  64. }
  65. else{
  66. //wstaw info odblokowane z wartościa
  67. ?>
  68. <td align="left" class="k2_ramka k2_r"><input type="text" name="info1_1" value="<?echo $info1_1a;?>" style="width: 100%;"></td>
  69. <?
  70. }
  71. }
  72. else{
  73. //wstaw przycisk wyłączony
  74. ?>
  75. <td width="30" align="center" class="k2_ramka"><input type="checkbox" name="info1" value="1" onclick="this.form.info1_1.disabled=!this.form.info1.checked;"></td>
  76. <?
  77. }
  78.  
  79. if(!$info1==1){
  80. //wstaw info zablokowane
  81. ?>
  82. <td align="left" class="k2_ramka k2_r"><input type="text" name="info1_1" style="width: 100%;" disabled="disabled"></td>
  83. <?
  84. }
  85. ?>
  86. </tr>


pola formularza maja takie same nazwy - mimo zastosowania unset w dodaj_3 zmienne zostają przekazywane do formularza krok_4 = jak je wyczyścić (usunąć) - oczywiście jak zmienię nazwy pól problem ginie - ale trzeba przerabiać cały skrypt.

Z góry dzięki za wskazówki
misiek172
niechce mi sie tego analizować ale może chodzi o to abyś użył $_GET / $_POST ?
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.