Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: smarty
Forum PHP.pl > Forum > PHP
linuxoida
Witam, mam taki mały problem i nie wiem czy on był już poruszany, ale jak nie mogłem go znaleźć. A mianowicie pisząc strone w php z użyciem smarty wszystko działa poprawnie tzn. podmienia mi zawartości, danych elementów strony jak kliknę na dany link. Ale kiedy kliknę na formularz, który też mi sie też załaduje, to po kiedy go wypełniam to nie wyświetlają mi sie błędy, że dane pole należy wypełnić. a jak użyje echo z php to wyświetli wszystko poprawnie. Oto poniższy kod.

index.php
  1. //istnieje połączenie z bazą wszystko jest git
  2. <?php
  3. switch($_GET['page'])
  4. {
  5.     case 'regp':
  6.    $smarty->display('index.tpl');
  7.        include_once('regp.php');
  8.     break;
  9.     default:
  10.     $smarty->display('index.tpl');
  11.    break;
  12. }
  13. ?>


regp.php

  1. <?php
  2. if(isset($_POST['name_carrier']))
  3. {
  4.     $smarty->assign('_name_carrier',$_POST['name_carrier']);
  5.    $sql_name_carrier= pg_query($psql_connect,"SELECT * FROM przewoznik WHERE przewoznik = '".$_POST['name_carrier']."'");
  6.    if(pg_num_rows($sql_name_carrier) != 0)
  7.    {
  8.        echo 'istnieje';
  9.    $smarty->assign('_name_carrier_err','nazwa przewoznika już intnieje');
  10.    }
  11.  
  12.  
  13. }
  14.  $smarty -> display('regp.tpl');
  15. ?>


regp.tpl
  1. <label for="name_carrier">Nazwa przewoznika: </label><span id="err">{$_name_carrier_err}</span> <input type="text" name="name_carrier" value="{$_name_carrier}" id="input_text" />


czy ktoś wie co tu jest zle?
P.S. wybrałem najważniejsze elementy kodu.
nmts
Trudno powiedzieć, zwłaszcza jeśli tamto echo się wykonuje. Wykorzystałem cały Twój kod jaki podałeś, zmieniając jedynie warunek na 1 != 0 i u mnie wszystko działa.
Tymczasowy link.
linuxoida
normalnie klac tylko i nie wiem gdzie jest błąd

no dobra moze gdzies indziej zrobilem bład to przeylam kod:
  1. <?php
  2. include_once('libs/Smarty.class.php');
  3. $smarty= new Smarty();
  4. $url='http://localhost/';
  5. $smarty->display('nag.tpl');
  6. $smarty->assign('_url',$url);
  7. include('pgconnect.php');
  8. include('logowanie.php');
  9. if(isset($_GET['page']))
  10. {
  11. switch($_GET['page'])
  12. {
  13.     case 'szukaj':
  14.     $smarty->display('index.tpl');
  15.    include('szukaj.php');
  16.    break;
  17.    case 'wg_przystanku':
  18.     $smarty->display('index.tpl');
  19.    include('wg_przystanku.php');
  20.    break;
  21.     case 'wg_h_odjazdu':
  22.    $smarty->display('index.tpl');
  23.    $smarty->assign('_page','odjazd');
  24.    include('wg_h_odjazdu.php');
  25.    break;
  26.     case 'wg_h_przyjazdu':
  27.     $smarty->display('index.tpl');
  28.     $smarty->assign('_page','przyjazd');
  29.    include('wg_h_przyjazdu.php');
  30.    break;
  31.    case 'szukaj_przystanku':
  32.    $smarty->display('index.tpl');
  33.    include('szukaj_przystanku.php');
  34.    break;
  35.     case 'szukaj_przewoznika':
  36.    $smarty->display('index.tpl');
  37.    include('szukaj_przewoznika.php');
  38.    break;
  39.     case 'regulamin':
  40.    $smarty->display('index.tpl');
  41.    break;
  42.     case 'cisb':
  43.     $smarty->display('index.tpl');
  44.    break;
  45.     case 'kb':
  46.     $smarty->display('index.tpl');
  47.    break;
  48.     case 'wg_przystanku':
  49.     $smarty->display('index.tpl');
  50.    break;
  51.     case 'bo':
  52.     $smarty->display('index.tpl');
  53.    break;
  54.     case 'kontakt':
  55.     $smarty->display('index.tpl');
  56.    break;
  57.     case 'telefon':
  58.     $smarty->display('index.tpl');
  59.    break;
  60.    break;
  61.     case 'regp':
  62.    $smarty->display('index.tpl');
  63.    include('regp.php');
  64.     break;
  65.     case 'forgot':
  66.    $smarty->display('index.tpl');
  67.     include('forgot.php');
  68.     break;
  69.     case 'logout':
  70.    $smarty->display('index.tpl');
  71.    $smarty->display('logout.tpl');
  72.     break;
  73.     case 'edit':
  74.    $smarty->display('index.tpl');
  75.    $smarty->display('editp.tpl');
  76.     break;
  77.     case 'kurs':
  78.    $smarty->display('index.tpl');
  79.    $smarty->display('kurs.tpl');
  80.     break;
  81.     default:
  82.     $smarty->display('index.tpl');
  83.    break;
  84. }
  85. }else
  86.    {    
  87.        $smarty->display('index.tpl');
  88.    }    
  89. $smarty->display('nagbody.tpl');
  90. ?>

  1. <?php
  2. if(isset($_POST['name_carrier']))
  3. {
  4.     $smarty->assign('_name_carrier',$_POST['name_carrier']);
  5.    $sql_name_carrier= pg_query($psql_connect,"SELECT * FROM przewoznik WHERE przewoznik = '".$_POST['name_carrier']."'");
  6.    if(pg_numrows($sql_name_carrier) == 0)
  7.    {
  8.        echo 'istnieje';
  9.        $smarty->assign('_name_carrier_err','nazwa przewoznika już intnieje');
  10.    }
  11.  
  12.  
  13. }
  14. $smarty -> display('regp.tpl');
  15.  
  16.  
  17. ?>



moze ktos pomoze
nmts
Możesz wierzyć lub nie, ale mam tutaj dokładnie to samo co Ty i działa. Wyrzuciłem tylko niepotrzebne tpl i nie includuje Twoich dodatkowych php. Sprawdź czy Tobie też będzie działać jak zakomentujesz te rzeczy, które wywaliłem, jeśli będzie to dodawaj po kolei te rzeczy, to może dojdziesz to źródła kłopotu - sprawdzona metoda:P, jeśli nie będzie działać to nie wiem co może być źle, może ktoś inny Ci pomoże. snitch.gif Tak poza tym, to jest dział osobny dla Smarty, o ile to faktycznie ma znaczenie dla tego problemu.
linuxoida
ale ze mnie ślepiec eh:(
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.