Jump to content
php.lv forumi

Recommended Posts

Posted (edited)

Lieta tāda, ka skripts ar trim sadala masīvu $file_nos divās daļās ( $alt[0] un $alt[1] ), tad tam skriptam būtu jāpārbauda vai $alt[0] nesatur tādu pašu vērtību kā $show_pic_nos, un ja satur tad skripts paņem tieši tās vērtības, kas atrodas iepretim $alt[0] ( resp. $alt[2] ).

 

// $file_nos ir Masīvs (Array), kas iegūts ar readdir() palīdzību.

 

respektīvi, masīvs satur:

01-govs

02-trusis

03-autobuss

 

// Tātad..

 

$show_pic_nos = "01";

 

if

$getAlt = trim($file_nos);

$alt = explode("-", $getAlt);

if ($alt[0] = $show_pic_nos){

$nos = $alt[1];

 

echo $alt[0]."-".$alt[1];

}

else{

echo "nedarbojas";

}

 

Kā lai dabū gatavu, ka tas skripts darītu sekojošu:

pārbauda vai $alt[0] nav $show_pic_nos, un ja ir, tad izdrukā attiecīgo rindinju ($alt[0] un $alt[1]).

Piedošanu, ka tik nesakarīgi uzrakstīju :(

Centos.

 

Ja kas nesaprotams - rakstiet!

Edited by Lokomotive
Posted (edited)
pirmais, kas krīt acīs:

if ($alt[0] = $show_pic_nos){

bet jābūt, laikam:

if ($alt[0] == $show_pic_nos){

Nē, tas diemžēl nelīdz, jo es jau tā mēģināju. Tas nedarbojas abejādi (gan ar = gan ar ==).

Skripts tiek izpildīts, taču nepareizi, jo tas izdrukā nevis 1 bildes nosaukumu (kas sastāv no $alt[0]."-".$alt[1] ), bet gan vairākus bilzhu nosaukumus (visus nosaukumus, kas atrodas tai direktorijā, kurru nolasīja ar readdir() (no kuras tika izveidots masīvs $file_nos.

Edited by Lokomotive
Posted

Gadījumā, ja es tiešām izsakos nepareizi vai nesaprotami, te būs viss nepieciešamais kods. Ceru, ka tagad tas radī kkādu priekšstatu par to skriptu..

 

 

$show_dir = "2003";
$show_pic_nos = "01";

if ($direktorija = opendir('data/foto/'.$show_dir)) {
  while (false !== ($file_nos = readdir($direktorija))) { 
      if ($file_nos != "." && $file_nos != ".." && $file_nos != "comments") { 
         print show($file_nos, $show_dir, $show_pic_nos);
      }
  }
  closedir($direktorija);
   
}
function show($file_nos, $show_dir, $show_pic_nos){
$getAlt = trim($file_nos);
$alt = explode("-", $getAlt);
if ($alt[0] == $show_pic_nos){
$nos = $alt[1];
}else{
echo "nav otraad faila daljas!";
}

echo "<tr>\n";
$pic = "<img class=\"gal_img\" src=\"data/foto/".$show_dir."/".$show_pic_nos."-".$nos."\">\n"; // alt=\"".$alt[1]."\"
echo "<td class=\"show_td\">".$pic."</td>\n";
echo "</tr>\n";
}

Posted
function show($file_nos, $show_dir, $show_pic_nos){
$getAlt = trim($file_nos);
$alt = explode("-", $getAlt);
if ($alt[0] == $show_pic_nos){
$nos = $alt[1];
echo "<tr>\n";
$pic = "<img class=\"gal_img\" src=\"data/foto/".$show_dir."/".$show_pic_nos."-".$nos."\">\n"; // alt=\"".$alt[1]."\"
echo "<td class=\"show_td\">".$pic."</td>\n";
echo "</tr>\n";
}else{
echo "nav otraad faila daljas!";
}
}

Posted

Re: Aleksejs

 

Jā, nu vismaz ar to figūriekavu palīdzību, par vienu kļūdiņu kļuva mazāk - tagad 1 nosaukuma vietā vairs neizdrukā visus nosaukumus un tas priecē.

Taču pašreizējā situācijā, skripts izdrukā pirmo masīva rindiņu!

 

respektīvi, ja masīvs satur:

01-govs

02-trusis

03-autobuss

 

tad neatkarīgi no saņemtā noscījuma($show_pic_nos) vērtības (piem. 01 vai 02 vai 03) tiek izvadīta pirmā rindiņa (01-govs).

×
×
  • Create New...