Jump to content
php.lv forumi

Undefined variable: id in


raivels

Recommended Posts

Kods izskatās šadi - <html>

<head><title>Pieprasita informacija </title></head>

<body>

<h3>Tu pieprasiji sekojosu

informaciju:</h3>

<table>

<?

if($id == 1) {

print("<tr><th colspan=\"2\">

Personiga informacija</th</tr>\n");

print ("<tr><td>Vards:</td><td><i>

$vards</i></td></tr>\n");

print("<tr><td>Uzvards:</t<

$uzv</i></td></tr>\n") ;

print("<tr><td>E-mails:

<td><i>$mails</i></td></tr>\n");

}

elseif ($id == 2) {

print("<tr><th colspan=\"2\">Darba

informacija</th></tr>");

print("<tr><td>Firmas nosaukums:</td>

<td><i>$firma</i></td></tr>\n");

print("<tr><td>Ienemamais amats:</td>

<td><i>$amats</i></td></tr>\n");

print("<tr><td>Telefons darba:</td>

<td><i>$d_tel</i></td></tr>\n");

}

else {

print ("<tr><td>Aizrausanas:

</td><td><i>

$aizr</i></td></tr>\n");

}

?>

</table>

</body>

</html>

 

To izpildod paraadaas saads errors -

Notice: Undefined variable: id in d:\www\generate.php on line 8

 

Notice: Undefined variable: id in d:\www\generate.php on line 18

 

Notice: Undefined variable: aizr in d:\www\generate.php on line 31

Aizrausanas:

Link to comment
Share on other sites

Brrr...nenotureejas ieraugot shaadu kodu ... sheit ir jalieto switch statemants!

 

$id=$_GET['id'];

 

switch ($id)

{

case 1:

//izvadam visu ko vajag

break;

case 2:

//izvadam visu ko vajag

break;

default:

//id ir tuksh vai ari cits skaitlis.

}

Link to comment
Share on other sites

Kāda atšķirība, swich / if, tie taču ir līdzīgi savā jomā.

 

switch ir tieši tam radīts, lai nebūtu jālieto if ...else bezgaliigi...

 

Attšķirīiba koda izplldē nav (laikam), bet ļir būtiska priekš koda pārskatāmības un it īpaši, ja jāmeklē klūdas.

 

Un vēl būtiskāk ir tad, ja kāds cits skatās to kodu. Jo ieraugot switch uzreiz tiek saprasts, ka te ir dažādi varinti, pēc vērtības, nevis ilgi un dikti jāseko līdzi visādiem if ...else

 

 

 

Piemēram, tik pat slikts stils ir taisīt:

$i = 0;

while ($i<$count)

{

//

$i++;

}

 

Neviss

for ($i=0;$i<$count;$i++)

{

//

}

Link to comment
Share on other sites

Nezinu, nepiekrītu:

1. Ņemot vērā, ka plain text`ā reti kurš rakstīs php kodu, tad izmantojot + - sakarīgu editoru, parskatāmība tā pat būs, iespējams pat lielāka izmantojot { }, var viegli pamanīt, kur biedzas sākas konkrētais bloks.

2. Šis manuprāt nebija tas ilgi un dikti garais piemērs, kur bija daudz jāskatās.

3. Kļūdu paziņojumi taču ir pietiekami skaidri, lai saprastu, kur ir kļūda.

 

Par while, for un foreach ir cits stāsts, katram savi + un -

Link to comment
Share on other sites

×
×
  • Create New...