![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 6.12.2003 Skąd: Elbląg City Ostrzeżenie: (0%) ![]() ![]() |
Witam ! Na początku zaznaczę iż sesjami mam doczyńienia od kilku dni. Dzieki temu formu zrobilem cos takiego (coś ala koszyk):
index.php: Kod <?php session_start(); if ($_POST['sesja']=='czysc') { unset( $_SESSION['db'] ); unset($db); } echo ' <form action="" method="post"> <table align=center border=0><tr><td valign=top width=250> <b><i>Pole wyboru:</i></b><br> <input type="radio" name="pozycja" value="pozycja 1" />pozycja 1 <br> <input type="radio" name="pozycja" value="pozycja 2" />pozycja 2 <br> <input type="radio" name="pozycja" value="pozycja 3" />pozycja 3 <br> <input type="radio" name="pozycja" value="pozycja 4" />pozycja 4 <br> <input type="radio" name="pozycja" value="pozycja 5" />pozycja 5 </td> <td align=center valign=middle width=250> <center><input type="submit" value="dodaj"></center> </td> </tr></table> </form>'; ?> <?php function koszyk($pozycja, $nazwa = 'db',$ile = 10) { $db = !empty($_SESSION[$nazwa]) ? $_SESSION[$nazwa] : array(); $db[]= $pozycja; $db = array_slice($db, 0 - $ile); $_SESSION[$nazwa] = $db; return $db; } echo("<i>wydruk kontrolny :</i><br><br>"); print_r(koszyk($pozycja)); // Jezeli tego prent_r przestawie ponizej prtli i foreach dane wyswietlane sa z opóznieniem echo("<br><br>"); echo("<b>To co dodales:</b><br><br>"); //petelka czytajaca tablce for ($i=0;$i<10;++$i) { echo("$i".$_SESSION['db'][$i]."<br>"); } echo("<br><br>"); echo("<br>"); echo("<b>To co dodales:</b>"); //opcja drukujaca tablice foreach ( $db as $val ) print "$val <br>"; ?> <form action="wyslij_mi_maila_z_zaznaczonymi_opcjami.php" method="post"> <INPUT TYPE=HIDDEN NAME="zaznaczone_opcje" VALUE="<?php foreach ( $db as $val ) print "$val <br>";?>"> <center><input type="submit" value="wy¶lij"></center> </form><br><br> <form action="" method="post"> <INPUT TYPE=HIDDEN NAME="sesja" VALUE="czysc"> <center><input type="submit" value="czysc"></center> </form><br><br> <?php echo("<br><br>");?> wyslij_mi_maila_z_zaznaczonymi_opcjami.php Kod <?php session_start(); //unset( $_SESSION['db'] ); ?> <?php $message = " ************************************ lista opcji wybranych w formularzu wczesniej: $zaznaczone_opcje ************************************ "; $email="email2"; $naglowki_listu="From: $email\r\nReply-to:$email\r\n"; mail("moj_email,$email","email_z_www",$message,$naglowki_listu) ?> Wszystko prawie ładnie działa ale: 1. dlaczego jezeli przeniose na sam dół podanego skryptu komendę: "print_r(koszyk($pozycja)); " to dane wyswitlane z petli i " foreach ( $db as $val ) print "$val <br>";" wyswietlane sa z opoznieniem. 2. w jaki sposob najlepiej przesylac dane do wyslij_mi_maila_z_zaznaczonymi_opcjami.php tak zeby dane były poukładane jedne pod drugimi, bo jezeli mam zrobione tak jak wyzej to wywala mi wszystko w jednej linii. 3. No i co zorobic najlepiej zeby przy odswierzaniu strony nie dodawal mi pustych lub przypadkowych wpisow. Jezeli są gdzies na formu odpowiedzi na ten temat to bede bardzo wdzięczny za linki. Jezeli są to problemy bardzo banalne to będę równiez bardzo wdzięczny za pomoc ![]() ****************************************** od. na pyt.2. (20:20) poradzilem sobie poprzez zastosowanie ".$_SESSION['db'][0]." itd... wyslij_mi_maila_z_zaznaczonymi_opcjami.php Kod <?php session_start(); //unset( $_SESSION['db'] ); ?> <?php $message = " lista opcji wybranych w formularzu wczesniej: ".$_SESSION['db'][0]." ".$_SESSION['db'][1]." ".$_SESSION['db'][2]." ".$_SESSION['db'][3]." ".$_SESSION['db'][4]." ".$_SESSION['db'][5]." ".$_SESSION['db'][6]." ".$_SESSION['db'][7]." ".$_SESSION['db'][8]." ".$_SESSION['db'][9]." "; $email="email2"; $naglowki_listu="From: $email\r\nReply-to:$email\r\n"; mail("moj_email,$email","email_z_www",$message,$naglowki_listu) ?> pozostały jeszcze 2 niewiadome ... ***********************************(20:50) odp. pyt1. Trzba bylo wywołać funkcje "koszyk($pozycja);" przed pętlą lub foreach i po zawodach ..... pozostała jeszcze jedna niewiadoma ... Ten post edytował andre991 22.06.2005, 19:52:26 -------------------- like this, like that.....
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 31.07.2025 - 07:52 |