![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Vice-Administrator serwera Grupa: Przyjaciele php.pl Postów: 395 Pomógł: 0 Dołączył: 7.08.2003 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Skrypt prosty ale mam z nim jeden problem. Dziala na zasadzie przyjmowania i wpisywania do tablicy imion (szablon w smarty) i zapisywania ich do sesji. gdy nie bylo if'a zaznaczonego w kodzie jako pierwszy rekord zapisywal do sesji wartosc pusta, poniewaz zmienna $_POST['imie'] ktora wysyla formularz jest pusta. Wcisnalem if'a zeby przy wartosci pustej nie zapisywal do zmiennej sesyjnej i efekt jest taki ze zapisuje mi tylko ostatnio wprowadzona wartosc a poprzednie traci, dodam ze mam wylaczone register_globals i chce zeby tak zostalo
[php:1:89e2b18d2d]<?php session_start(); if ($_POST['sesja'] == "tak") { session_destroy(); } //config smarty require('./smarty/libs/Smarty.class.php'); $smarty = new Smarty; $smarty->compile_check = true; $smarty->debugging = false; $smarty->template_dir = './template/'; $smarty->compile_dir = './template_c/'; $smarty->config_dir = './config/'; $smarty->cache_dir = './cache/'; $smarty->display('header.tpl'); //z tym ifem jest problem if ($_POST['imie']!="") { $_SESSION['imie2'] = array_merge($_SESSION['imie2'],$_POST['imie']); } $imie3="test"; print ($_POST['imie']); print_r($_SESSION['imie2']); //print($sesja); $smarty->assign(array("imie2"=>$_SESSION['imie2'],"imie3"=>$imie3)); $smarty->display('index.tpl'); $smarty->display('footer.tpl'); ?>[/php:1:89e2b18d2d] |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 263 Pomógł: 0 Dołączył: 13.07.2003 Skąd: wawa Ostrzeżenie: (0%) ![]() ![]() |
spróbuj
[php:1:e90e79f89a]<?php if(!empty($_POST['imie'])) { //.... } //lub if(!$_POST['imie']) { } // i jeszcze jedno //$smarty->assign( chyba powinno przyjmować dwa argumenty no i to nazwe tablicy co uzyłeś.. gdzie jest nazwa tej tablicy? $smarty->assign('imiona',array('imie2'=>$_SESSION['imie2'],'imie3'=>$imie3)); ?>[/php:1:e90e79f89a] Pozdro |
|
|
![]()
Post
#3
|
|
Vice-Administrator serwera Grupa: Przyjaciele php.pl Postów: 395 Pomógł: 0 Dołączył: 7.08.2003 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
co do smarty->assign to masz racje ze powinny byc dwa argumenty, ale bez nich tez dziala ... ten skrypt ma pare miesiecy a teraz przerabiam go na register_globals = off i przyznam sie nie pamietam dlaczego akurat tak to napisalem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
i juz dziala ... co najciekawsze bez zadnych wiekszych zmian, chyba mialem jakas literowke w kodzie. PS po paru miesiacach wracam do php |
|
|
![]()
Post
#4
|
|
Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
Cytat co do smarty->assign to masz racje ze powinny byc dwa argumenty, ale bez nich tez dziala ... Pod warunkiem, że:
jeśłi jest tylko jeden argument, jest on tablicą asocjacyjną. http://smarty.php.net/manual/en/api.assign.php |
|
|
![]()
Post
#5
|
|
Vice-Administrator serwera Grupa: Przyjaciele php.pl Postów: 395 Pomógł: 0 Dołączył: 7.08.2003 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Cytat Pod warunkiem, że:
jeśłi jest tylko jeden argument, jest on tablicą asocjacyjną. http://smarty.php.net/manual/en/api.assign.php a w moim kodzie tak jest czyli wszystko w porzadku z nim ? |
|
|
![]()
Post
#6
|
|
Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
Jełśi chodzi o assign() to tak.
Inna sprawa, ze nie rozumiem tego dość skomplikowanego żonglowania $_POST i $_SESSION... |
|
|
![]()
Post
#7
|
|
Vice-Administrator serwera Grupa: Przyjaciele php.pl Postów: 395 Pomógł: 0 Dołączył: 7.08.2003 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
testuje sobie przesylanie danych postem i zapis ich do sesji w formie tablicy przy register_globals = off ... i na taki pomysl osiagniecia tego wpadlem ... szablon do tego wyglada tak:[xml:1:d0efc1a997]<form action="{$PHP_SELF}" method="post">
<input type="text" name="imie"><br> Zniszczyć sesję?<br /> <input type="radio" name="sesja" value="tak">TAK<br /> <input type="radio" name="sesja" value="nie" checked>NIE<br /> <input type="submit" value="Podaj imię"/> </form> <table border> {section name=imiona loop=$imie2} <tr><td>{$imie2[imiona]}</td></tr> {/section} </table> $imie3 to {$imie3} [/xml:1:d0efc1a997] i pobiera imiona i wyswietla je potem w formie tabeli ... |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 16:05 |