Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problemik z sesjami
Forum PHP.pl > Forum > PHP
cedunio
Witam
Za bardzo nie kojarze jeszcze o co biega w sejsjach wiec zaporzyczylem sądś ladny schemacik formularza teraz go drobnie modyfikuje. Ładnie zaznacza mi pole które jest nie wypełnione, ale gdy peirwszy raz uruchamia sie strone to pola automatycznie są zaznaczane jako puste. Czy można temu jakoś zaradzić? oto kod:
Kod
</div><?php
session_start();

if (!empty($_POST['oursubmit'])){
//gdy wyslano formularz (kliknieto przycisk "oursubmit")
//zapisz jego stan w sesji    

     $_SESSION['form'] = array(
         'field1' => $_POST['field1'],
         'field2' => $_POST['field2'],
         'field3' => $_POST['field3']
     );
}

//niezaleznie, czy wyslano formularz, czy nie,
//pobierz jego stan z sesji

$formData = array(
     'field1' => !isset($_SESSION['form']) ? null : $_SESSION['form']['field1'],
     'field2' => !isset($_SESSION['form']) ? null : $_SESSION['form']['field2'],
     'field3' => !isset($_SESSION['form']) ? null : $_SESSION['form']['field3'],
);

if (!empty($formData['field1'])){
$c1 = "";}
else {
$c1 = "border='3' bordercolor='#FF0000'";}

if (!empty($formData['field2'])){
$c2 = "";}
else {
$c2 = "border='3' bordercolor='#FF0000'";}

if (!empty($formData['field3'])){
$c3 = "";}
else {
$c3 = "border='3' bordercolor='#FF0000'";}

?>
<form method="post">

<table width="200"cellpadding="0" cellspacing="0" bordercolor="#FF0000" <?php echo $c1; ?>>
   <tr>
     <td><label>Jakies pole1</label><input name="field1" value="<?php echo $formData['field1'];?>"/></td>
   </tr>
</table>
    

    <table width="200" cellpadding="0" cellspacing="0"  <?php echo $c2; ?>>
   <tr>
     <td><label>Jakies pole1</label><input name="field2" value="<?php echo $formData['field2'];?>"/></td>
   </tr>
</table>

     <table width="200"  cellpadding="0" cellspacing="0"  <?php echo $c3; ?>>
   <tr>
     <td><label>Jakies pole1</label><input name="field3" value="<?php echo $formData['field3'];?>"/></td>
   </tr>
</table>

     <input type="submit" name="oursubmit" value="Szukaj" />
</form>
<p>
<div>
Jeśli ma ktoś jakiś pomysł proszę o pomoc i z góry dziekuję snitch.gif
Shili
  1. <?php
  2.  
  3. if (!empty($_POST['oursubmit'])){
  4. //gdy wyslano formularz (kliknieto przycisk "oursubmit")
  5. //zapisz jego stan w sesji
  6.  
  7.  $_SESSION['form'] = array(
  8.  'field1' => $_POST['field1'],
  9.  'field2' => $_POST['field2'],
  10.  'field3' => $_POST['field3']
  11.  );
  12. }
  13.  
  14. //niezaleznie, czy wyslano formularz, czy nie,
  15. //pobierz jego stan z sesji
  16.  
  17. $formData = array(
  18.  'field1' => !isset($_SESSION['form']) ? null : $_SESSION['form']['field1'],
  19.  'field2' => !isset($_SESSION['form']) ? null : $_SESSION['form']['field2'],
  20.  'field3' => !isset($_SESSION['form']) ? null : $_SESSION['form']['field3'],
  21. );
  22. if(isset($_POST['oursubmit'])) { 
  23. if (!empty($formData['field1'])){
  24. $c1 = "";}
  25. else {
  26. $c1 = "border='3' bordercolor='#FF0000'";}
  27.  
  28. if (!empty($formData['field2'])){
  29. $c2 = "";}
  30. else {
  31. $c2 = "border='3' bordercolor='#FF0000'";}
  32.  
  33. if (!empty($formData['field3'])){
  34. $c3 = "";}
  35. else {
  36. $c3 = "border='3' bordercolor='#FF0000'";}
  37. }
  38.  
  39. ?>
  40. <form method="post">
  41.  
  42. <table width="200"cellpadding="0" cellspacing="0" bordercolor="#FF0000" <?php echo $c1; ?>>
  43.  <tr>
  44.  <td><label>Jakies pole1</label><input name="field1" value="<?php echo $formData['field1'];?>"/></td>
  45.  </tr>
  46. </table>
  47.  
  48.  
  49. <table width="200" cellpadding="0" cellspacing="0" <?php echo $c2; ?>>
  50.  <tr>
  51.  <td><label>Jakies pole1</label><input name="field2" value="<?php echo $formData['field2'];?>"/></td>
  52.  </tr>
  53. </table>
  54.  
  55.  <table width="200" cellpadding="0" cellspacing="0" <?php echo $c3; ?>>
  56.  <tr>
  57.  <td><label>Jakies pole1</label><input name="field3" value="<?php echo $formData['field3'];?>"/></td>
  58.  </tr>
  59. </table>
  60.  
  61.  <input type="submit" name="oursubmit" value="Szukaj" />
  62. </form>
  63. <p>
  64. <div>

Prześledź sobie różnice winksmiley.jpg Czy też różnicę winksmiley.jpg
cedunio
polonista nie jestem:P
dzięki za pomoc
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.