probleme cu switch&include

Secţiune dedicată începatorilor.

Moderatori: Moderatori, Start Moderator

iamnoguru
PHPRomania Supporter
Mesaje: 17
Membru din: Mie Iul 14, 2004 8:12 pm

Mesajde iamnoguru » Joi Iul 22, 2004 11:21 pm

Nu am testat si nu garantez, s-ar putea sa mearga.

[php]
<?php

error_reporting(E_ALL & ~E_NOTICE);

$pagina = strtolower($_GET['page']);

switch($pagina) {

case "history": $page="history.php"; break;
case "members": $page="members.php"; break;
case "awards": $page="awards.php"; break;
case "downloads": $page="down.php"; break;
case "links": $page="links.php"; break;
case "contact": $page="contact.php"; break;
case "news": $page="news.php"; break;
default: $page="re.php"; break;

}

$subpagina = strtolower($_GET['get']);

switch($subpagina) {

case "news19-03-2004": $page="news/news2.php"; break;
case "judy": $page="membri/judy.php"; break;
default: $page="re.php"; break;

}


include($page);
?>
[/php]



Troto
PHPRomania Coder Professional
Mesaje: 249
Membru din: Mar Iun 29, 2004 2:11 am
Localitate: Brasov

Mesajde Troto » Vin Iul 23, 2004 12:35 am

E gresit

tu in fiecare switch ai un default. Si acel default este asociat aceleasi variabile in fiecare din ele. Deci switch-ul ultim va suprascrie peste selectia facuta in primul switch

deci ai nevoie de 2 variabile : una pt pagina principala siapoi una pt subpagina

Danutz
Average Member
Mesaje: 162
Membru din: Joi Iul 08, 2004 2:20 am
Contact:

Mesajde Danutz » Vin Iul 23, 2004 1:08 am

deci eu tot nu am reusit sa-mi dau seama cum sa fac si eu as vreau sa fac cu mai multe subpagini in jur de 5 subpagini offf

Troto
PHPRomania Coder Professional
Mesaje: 249
Membru din: Mar Iun 29, 2004 2:11 am
Localitate: Brasov

Mesajde Troto » Vin Iul 23, 2004 1:22 am

pana la urma care e problema acum ?

Nu iti include pagina sau ce ?

iti da vreo eroare ?

Danutz
Average Member
Mesaje: 162
Membru din: Joi Iul 08, 2004 2:20 am
Contact:

Mesajde Danutz » Vin Iul 23, 2004 1:34 am

deci am scriptu care mi lai completat tu acuma si imi merge foarte bine pentru index.php?page=pagina dar nu reusesc de nici o culoare sa fac sa mearga index.php?page=pagina&get=altapagina
am incercat prin mai multe formalitati da ba cand dau pe link imi incarca aceiasi pagina ba imi da erroare nu stiu ce sa mai fac ma iau toti draci :(

plz help me!!! 8O

Troto
PHPRomania Coder Professional
Mesaje: 249
Membru din: Mar Iun 29, 2004 2:11 am
Localitate: Brasov

Mesajde Troto » Vin Iul 23, 2004 1:39 am

Pai scriptul tau e gresit.. si din motivele care le-am scris mai jos.

varibila $pagina se suprascrie datorita faptului ca tu atribui valoare gasita din switch tot variabilei $pagina....

eventual sterge default-ul...dar tot gresit ramane

Danutz
Average Member
Mesaje: 162
Membru din: Joi Iul 08, 2004 2:20 am
Contact:

Mesajde Danutz » Vin Iul 23, 2004 2:53 am

in fine am reusit de fapt ma ajutat un prieten oricum va multumesc pentru ajutor

noapte buna :)

Troto
PHPRomania Coder Professional
Mesaje: 249
Membru din: Mar Iun 29, 2004 2:11 am
Localitate: Brasov

Mesajde Troto » Vin Iul 23, 2004 2:57 am

si pana la urma cum era ? macar posteaza rezolvarea

Danutz
Average Member
Mesaje: 162
Membru din: Joi Iul 08, 2004 2:20 am
Contact:

Mesajde Danutz » Sâm Iul 24, 2004 7:01 am

scriptu arata ceva de ganu asta:

index.php
[php]
<?php

error_reporting(E_ALL & ~E_NOTICE);

switch ($_GET["page"]) {
case "pagina":
include "pagina.php";
break;
}

?>
[/php]
asta pentru a folosi index.php?page=pagina

pagina.php
[php]
<?php

error_reporting(E_ALL & ~E_NOTICE);

switch ($_GET["get"]) {
case "altapagina":
include "alatapagina.php";
break;
}

?>
[/php]
asta pentru: index.php?page=pagina&get=altapagina

oricum va multumesc pentru atentia pe care mi-ati acordato

numai bine

Avatar utilizator
stealth
Senior Member
Mesaje: 308
Membru din: Lun Iun 21, 2004 9:36 am
Localitate: Timisoara
Contact:

Mesajde stealth » Mar Iul 27, 2004 4:54 am

[php]
<?php

error_reporting(E_ALL & ~E_NOTICE);

$pagina = strtolower($_GET['page']);

switch($pagina) {

case "history": $page="history.php"; break;
case "members": $page="members.php"; break;
case "awards": $page="awards.php"; break;
case "downloads": $page="down.php"; break;
case "links": $page="links.php"; break;
case "contact": $page="contact.php"; break;
case "news": $page="news.php"; break;

//--> De ce nu inchizi aici acoldele?

$pagina = (strtolower($_GET['get']); // aici as vrea sa fie index.php?page=members&get=judy

//--> Variabila ta se numeste $pagina si tu supui la switch $pagini

switch($pagini) {

case "news19-03-2004": $page="news/news2.php"; break;
case "judy": $page="membri/judy.php"; break;

} break; //-->De la break-ul asta in jos nu imi dau seama ce vrei sa faci ...


default: $page="re.php"; break;
}

include($page);
?>
[/php]


Înapoi la “PHP Incepători”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 14 vizitatori