Jump to content
php.lv forumi

Padoto mainigo parbaude ar funkcijas palidzibu.


Uldeens

Recommended Posts

Kadi komentari par shadu mainigo parbaudes veidu ? Varbut ieteikumi kaa labak darit?

 

 

 

Ir forma ar trim mainigajiem kas ir atlases kriteriji sql kverijam.

 

'a 'b' un 'c' .

 

Tos parbauda funkcija.

 

function check($a,$b,$c)
{

if(empty($a) && empty($b) && empty($c))
{
$query="all";
}
elseif(empty($a) && empty($b))
{
$query="c";
}
elseif(empty($c) && empty($b))
{
$query="a"
}
return $query;
}

 

un index fails :

 

<? require("functions.php");

$sql=check($a,$b,$c);

switch($sql)
{
case 'all' :

$query=mysql_query("SELECT id FROM table");

case 'c' :

$query=mysql_query("SELECT id FROM table WHERE mainigais='c' ");

default : 
.......
}

Edited by Uldeens
Link to comment
Share on other sites

Baigi garš kods sanāk un ko darīsi, ja pēkšņi vēl 5 mainīgie nāks klāt? Ciklā ej cauri savai mainīgo listei, attiecīgi tos apstrādā un pēc tam kabini vienu pie otra apmēram tādā formā (te, protams, arī ir varianti) ' AND lauks = ' . $mainigais.

Rezultātā iegūsi apmēram tādu stringu AND lauks1 = 1 AND lauks2 = 2

Beigās atliks uzrakstīt tikai 1 kveriju: select * from tabula where 1 = 1 $iegūtais strings

Risinājuma variantu var uzlabot, bet idejiski es darīt tā

Edited by litt
Link to comment
Share on other sites

kaut kā samocīti izskatās. padomā, varbūt tavā gadījumā der šitāda konstrukcija

foreach(array('a','b','c') as $variable)
{
 if(isset($$variable) && !empty($$variable))
 {
echo $variable .'='.$$variable.'; ';
 } else {
echo $variable . ' nav';
 }
}

 

šādai pārbaudei ir ļoti viegli pielikt/izmest citus mainīgos, kas ir labi,ja vēlāk vajadzēs kaut ko refacturēt.

Link to comment
Share on other sites

×
×
  • Create New...