Devilman
6.05.2013, 20:16:34
Witam, od razu zaznaczam, iż jestem osobą która niestety nie posiada dużej wiedzy z zakresu języka php, lecz okoliczności (oddanie projektu na zaliczenie) zmusza mnie do napisania kawałka kodu.
Mam problem, w momencie gdy staram się wraz z przejściem na podstronę przekazać zmienną. Cała idea polega na tym, że za pomocą mapy w zależności od tego gdzie kliknę ma przenieść mnie do tej samej podstrony ale z różną zmienną. Niestety do tej pory nie udało mi się przekazać jakiejkolwiek z moich zmiennych.
To jest przykładowy link przekierowujący na podstronę:
<area shape="poly" coords="263,24,472,27,751,108,522,170,285,131,260,42,263,24" href="index.php?id=8&RodzajTr=L" />
Na podstronę przechodzę za pomocą funkcji switch gdzie wykorzystuję opcję include
Natomiast do przechwycenia zmiennej chciałem posłużyć się sesją zapisując ją w następujący sposób :
<? php
session_start();
if (!empty($_GET['RodzadjTr'])){
$_SESSION["RodzajTr"]= $_GET['RodzajTr'];
}
...
?>
negacja empty wynika z tego, iż tą samą metodą ładują do div'a inne podstrony.
Z góry dziękuję za odpowiedź i przepraszam jeśli źle umieściłem temat.
sajegib
6.05.2013, 20:44:33
Podaj cały kod, niewiele wiadomo z tego co napisałeś, gdybyś zrobił wszystko "po bożemu", zmienna sesyjna byłaby dostępna w pliku do którego includujesz cośtam
session_start(); robisz w głównym pliku czy w tych includowanych?
Devilman
6.05.2013, 22:50:29
div>
<a href="index.php?id=1"><img class="Naglowek" alt="home" src="img/buttons/home.png" /></a>
<img class="Naglowek" alt="O_nas" src="img/buttons/o_nas.png" />
<a href="index.php?id=2"><img class="Naglowek" alt="cennik" src="img/buttons/cennik.png" /></a>
<a href="index.php?id=3" ><img class="Naglowek" alt="kontakt" src="img/buttons/kontakt.png"/></a>
</div>
<div>
<img src="img/logo.png" usemap="#Logo" width="911" height="432" class="Logo" alt="Wybierz rodzaj transportu" />
<map id="Logo">
<area shape="circle" coords="217,319,176" href="index.php?id=8&RodzajTr=M" title="Transport morski" />
<area shape="rect" coords="546,171,868,303" href="index.php?id=8&RodzajTr=C" title="Transport ciężarowy" />
</map>
</div>
<div>
<?php
session_start();
if (!empty($_GET['RodzadjTr'])){
$_SESSION["RodzajTr"]= $_GET['RodzajTr'];
}
if (empty($_GET['id']) or $_GET['id'] == "1") {
include("home.html");
} else {
switch ($_GET['id']) {
case "2":
include("cennik.php");
break;
case "3":
include("kontakt.html");
break;
case "4":
include("o_firmie.html");
break;
case "5":
include("oferta.html");
break;
case "6":
include("uslugi.html");
break;
case "7":
include("samochody.html");
break;
case "8":
//include("cennik.php);
//
//tu niestety nie wiem co napisać
break;
default :
include("home.html");
break;
}
}
?>
</div>
</body>
</html>
sajegib
6.05.2013, 22:52:15
włącz obsługę błędów w PHP i przesuń session_start(); na samą górę pliku
Devilman
9.05.2013, 11:35:22
Włączyłem obsługę błędów oraz przeniosłem session_start(); na początek lecz niestety nie pomogło to. Na stronie wyświetla się błąd:
Notice: Undefined index: RodzajTr in C:\wamp\www\cennik.php on line 13
ajlowju
9.05.2013, 12:21:43
Mam trochę pytanie z innej beczki, ale o to samo.
Czy można uzyskać taki efekt, o który pyta kolega wyżej, jednak za pomocą AJAXA?
goukan
9.05.2013, 13:48:44
index.html:
<a href="test.php?id=2&dupa=2">Link</a>
test.php
<?php
if($_GET['id']==2)
{
if($_GET['dupa']==2)
{
}
}
?>
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.