[ gagacar @ 22.01.2010. 01:23 ] @
Pozdrav,

imam sledeci problem. Pokusavam da napisem kod koji treba da me prebaci na stranu, a strana zavisi od toga koja se drzava izabere i koji jezik Naime, najpre iz jedne padajuce liste biram jezike, pa kad izaberem jezike onda on treba da mi se ponudi padajuca lista samo onih drzava u kojima se govori taj jezik, pa kad izaberem jezik da me redirektuje na neku odredjenu stranu. Podaci za drzave i jezike koje koristi se vuku iz baze. Dodjem do samog kraja i kad treba da se redirektuje tu se vrati na pocetak. Zvuci malo sasavo ali je tako...

Napisao sam neki kod, ali ne znam gde gresim pa ako moze neko da mi priskoci u pomoc:

Code:

<form action="<?php echo $PHP_SELF ?>" method="post">
<p>izaberi jezik:</p>
<p>
<select name="jezik">
            <option value="0">izaberite jezik</option>
            <option value="engleski">engleski jezik</option>
            <option value="francuski">francuski jezik</option>
            <option value="grcki">grčki jezik</option>
            <option value="italijanski">italijanski jezik</option>
            <option value="nemacki">nemački jezik</option>
            <option value="portugalski">portugalski jezik</option>
            <option value="ruski">ruski jezik</option>
            <option value="srpski">srpski jezik</option>
            <option value="spanski">španski jezik</option>

        </select>
</p>
<p><input type="submit" name="submit" value="Izaberi jezik" /></p>

<?php
          include_once ($_SERVER['DOCUMENT_ROOT']."/baza.php");
          $jezik = @$_REQUEST['jezik'];
      $submit = @$_POST['submit'];

                if ($jezik == "srpski")  $jez=1;  
        if ($jezik == "engleski")  $jez=2; 
        if ($jezik == "francuski")  $jez=3; 
        if ($jezik == "italijanski")  $jez=4; 
        if ($jezik == "spanski")  $jez=5; 
        if ($jezik == "nemacki")  $jez=6; 
            if ($jezik == "ruski") $jez=7; 
        if ($jezik == "portugalski")  $jez=8; 
        if ($jezik == "grcki")  $jez=9; 
        


          for ($k=1; $k<=10; $k++)
      {
      if ($jez == $k) 
      {
      $sqljez = "SELECT drzava FROM tabela WHERE ($jezik='1')"; // U bazi sve drzave za vrednosti jezika koji koriste imaju 1, a za ostale 0, a i stavke se bas tako zovu srpski, engleski...

          $resjez = mysql_query ($sqljez); 
          echo "<select name='drzava'>";
      if ($resjez)
      {
      while($rowjez=mysql_fetch_array($resjez))
        {
             echo "<option value='".$rowjez['drzava']."'>".$rowjez['drzava']."</option>";
        }
      }
          echo "</select>";

?>
 <input type="submit" name="submit2" value="Izaberi drzavu" />
<?php
               $drzava = @$_POST['drzava'];
        $submit2 = @$_POST['submit2'];
        
        if (!empty($submit2)) 
        {
                    if ($drzava == 'Srbija') { header("Location: http://www.adresasajta.com/blabla/index.php"); }

                 // Do ovde prolazi ali ovu stranu nece da mi redirektuje.

        }

?>
</form>


Unapred hvala
[ Nemanja Avramović @ 22.01.2010. 11:04 ] @
Header ne možeš poslati posle ispisivanja bilo kakvog outputa (html kôda), zato ti redirekcija i ne radi. Ili reorganizuj skriptu tako da se header() zove pre ispisa bilo čega u browser ili radi redirekciju preko JavaScript-a.

[ gagacar @ 24.01.2010. 20:11 ] @
ok. Da li mozda imas neki predlog kako bih mogao da uradim?
[ dakipro @ 24.01.2010. 20:23 ] @
Odvojis ceo html kod na dno stranice, pa ga otuda stampas iz nekih promenjivih kad cela skripta zavrsi sa radom, ili ako hoces ozbiljnije resenje onda ubacis neki template engine (preporuka smarty) ili bilo koji po izboru, uglavnom goreg resenje nema od strukture koju trenutno koristis.