Jump to content
php.lv forumi

Kā pareizāk


Artenis

Recommended Posts

Esmu pieradis lietot: switch, bet vienmēr ir sanāčis viņu apietit vienkāršākā veidā, tas ir:

Uzspiežu ?link=2 [parādāš ?link=2 info], lai man spiežot ?link=2&id=5 neparāītos, ?link=2 infa, izveidoju tukšu case, un sanāča tā: ?link=3&id=5... Bet šoreiz tas neder, jo ir entās apakšsadaļas...

Doma tāsa, kā, lai izdara to, ka nospiežot ?link=1 <- parādāš tikai ?link=1 (infa) nospiežot ?link=1&id=5 (parādās tikai &id=5 infa un hotj nospiežot ?link=1&id=5&a_id=9 parādāš tikai a_Id=9 infa...

ceru, ka domu sapratā...

 

Panākt, lai iepriekšējo linku vēŗtības nerāda...

<?php
while($row=mysql_fetch_assoc($r_text_page)){ 
switch($_GET['link']){
case $row['s_id']:
echo $row['saturs'];
break;
}
switch($_GET['id']){
case $row['s_id']:
echo $row['saturs'];
break;
}
switch($_GET['a_id']){
case $row['s_id']:
echo $row['saturs'];
break;
}
}
?>

Kaut kā tā, info parāda, bet rāa visas kopā, tipa sapludina!

Edited by Artenis
Link to comment
Share on other sites

Lai arī otrajā teikumā domas izklāsts vienkārši drausmīgs ;), domu laikam sapratu.

if (isset($_GET['a_id'])) {
// bla bla
} elseif (isset($_GET['id'])) {
// bal bal
} elseif (isset($_GET['link'])) {
// bla bla
}

 

PS.

while($row=mysql_fetch_assoc($r_text_page)){
switch($_GET['id']){
case $row['s_id']:
echo $row['saturs'];
break;
}

 

Par WHERE iekš SQL neesi dzirdējis ?

Edited by andrisp
Link to comment
Share on other sites

ar to if (isset($_GET[... Kaut kā vispāŗ nesanāca...

 

Tad nu kaut kā klausījo tevi ar to WHERE un atdūros pret vienu lietu, ar $_GET['link'] protams, ka tagad strādē, bet:

<?php
$q_text_page_a  = "SELECT * FROM $tb4 WHERE s_id=".$_GET['link']."";
$r_text_page_a = mysql_query($q_text_page_a);
while($row=mysql_fetch_assoc($r_text_page_a)){ 
switch($_GET['id']){
case $row['s_id']:
echo $row['saturs'];
break;
}

switch($_GET['a_id']){
case $row['s_id']:
echo $row['saturs'];
break;
}

switch($_GET['link']){
case $row['s_id']:
echo $row['saturs'];
break;
}
}
?>

Kā, lai tajā $_GET['link'] vietā pie selectošanas ieliek mainīgo, kas atsauksies tikai uz konkrēto virknes daļu: ?link=1&id=2&a_id=3 ?

Link to comment
Share on other sites

Šitā?

if (isset($_GET['a_id'])) {
$lala = (int)$_GET['a_id']
} elseif (isset($_GET['id'])) {
// skat. augstaak
} elseif (isset($_GET['link'])) {
// skat. augstaak
}

$q_text_page_a  = "SELECT * FROM $tb4 WHERE s_id=".$lala."";

 

Un nevajag izmanto while(), ja kverijs atgriež tikai vienu rindu.

Link to comment
Share on other sites

Varbūt Artenis domāja lai selektē visus link=1&id=2&a_id=3 un selektē tikai kādu vienu ierakstu.

Tad pie WHERE ar AND to var.

Lai gan nezinām jau tabulas struktūru.

Un kas tajā laukā s_id īsti glabājas?

Edited by mounkuls
Link to comment
Share on other sites

×
×
  • Create New...