Wiele pól formularza

0

Witam, otóż chcę zrobić skrypt, który na wybrany kraj europy pokażę nam stolicę. Krajów jest sporo więc zrobiłem tak:

<html>
<head>
</head>
<body>
<form action="stolica.php" method="post">

<?php
print'<select name=kraj>';
$p=(array(1=>"Albania","Andora","Austria","Belgia","Białoruś","Bośnia i Hercegowina","Bułgaria","Chorwacja","Cypr","Czarnogóra","Czechy","Dania","Estonia","Finlandia","Francja","Grecja","Hiszpania","Holandia","Irlandia","Islandia","Kosowo","Liechtenstein","Litwa","Luksemburg","Macedonia","Malta","Monako","Mołdawia","Niemcy","Norwegia","Polska","Portugalia","Rosja","Rumunia","San Marino","Serbia","Szwajcaria","Szwecja","Słowacja","Słowenia","Turcja","Ukraina","Watykan","Wielka Brytania","Węgry","Włochy","Łotwa"));
for($i=1;$i<48;$i++)
{
echo("<option>".$p[$i]."</option>");
}
echo("</select>");
?>

<input type="submit" value="Wyślij"/>
</form>
  

</body>
</html> 

Takie coś w CoreEditorze działa, ale w przeglądarce i w appachu nie działa nie wiem co może być nie tak. Proszę o pomoc.

0

Nie ma błędu po prostu output wychodzi:

"$p[$i]."

zamiast dodać wszystkie opcje wyboru, w edytorze dodaje poprawnie

0

Output w edytorze wygląda tak:
http://fotoo.pl/show.php/41877_edytor.png.html
a w przeglądarce i appachu wygląda to tak:
http://fotoo.pl/show.php/41880_blad.png.html
Wygląda jak by po selekcie nie kompilował na PHP

0

bo widocznie nie przechodzi przez parser PHPa, jaki masz adres w URLu? Bo patrząc na kod, to wygląda to poprawnie

0

Trochę dziwne to co piszesz bo u mnie działa normalnie. Może z konfiguracją masz coś nie tak...

<?php
echo '<select name=kraj>';
$p=(array(1=>"Albania","Andora","Austria","Belgia","Białoruś","Bośnia i Hercegowina","Bułgaria","Chorwacja","Cypr","Czarnogóra","Czechy","Dania","Estonia","Finlandia","Francja","Grecja","Hiszpania","Holandia","Irlandia","Islandia","Kosowo","Liechtenstein","Litwa","Luksemburg","Macedonia","Malta","Monako","Mołdawia","Niemcy","Norwegia","Polska","Portugalia","Rosja","Rumunia","San Marino","Serbia","Szwajcaria","Szwecja","Słowacja","Słowenia","Turcja","Ukraina","Watykan","Wielka Brytania","Węgry","Włochy","Łotwa"));
for($i=1;$i<48;$i++)
{
echo ('<option>'.$p[$i].'</option>');
}
echo('</select>');
?> 

Zmieniłem z cudzysłowów na apostrofy ale i bez tego Twój kod śmigał bez problemu.

0

Mi się też wydaję, że powinno działać a nie działa.
Gdzie to uruchamiałeś, spróbuj przez przeglądarkę u mnie na najnowszym firefoxie nie działa.
@no_solution_found
A dlaczego nie chce parsować tego PHP? Zatrzymuje się na tym selecie dawałem go przed PHP i też nie działało.
@down
Wyczyściłem cache i dalej nie działa jakiś porypany PC mam, nie wiem co jest nie tak, ale testowałem na innym i też nie działało.

0

Zakładam, że masz zainstalowanego lokalnie apacza. Wrzuć na twojego Apache plik o nazwie info.php i wpisz w nim treść jak poniżej:

<?php 
phpinfo();
 ?> 
 

Uruchom w przeglądarce adres http://localhost/info.php
Jak się okaże, że info się nie wypisze, to znaczy, że nie skonfigurowałeś PHP w apaczu. Działało ci w ogóle kiedyś, czy to pierwszy eksperyment? Może nikt ci nie powiedział, że PHP nie jest fabrycznie wbudowane w Apache? A może phpinfo() zadziała...

0

Nie nigdy mi to nie działało a info.php działa wszystko ładnie pokazuje.

0

ewidentnie nie przechodzi przez parser php, podeślij proszę pełną ścieżkę do pliku, w którym jest błąd.

0

C:\usr\krasnal\www\stolice europy\stolica.html

2

i tu jest pies pogrzebany :)

pliki z rozszerzeniem .html nie są w ogóle interpretowane przez parser PHP, zmień rozszerzenie na php i powinna działać :)

0

No dzięki, ale głupi błąd.

1 użytkowników online, w tym zalogowanych: 0, gości: 1