Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Natcasesort non funziona perchè?

    Buon giorno, ho questo problema, utilizzando Natcasesort, dovrebbe estrapolarmi delle immagini in ordine di numerazione, invece estrapola soltanto l'ultima immagine, sapete dirmi per favore, analizzando lo scrpt che post, il perchè di questa anomalia?

    codice:
    $dir_foto = "centri_logistici_operativi";
    $dirname = $dir_foto;
    
    function read_dir($dirname) {
    						   $path = opendir($dirname . "/tmb/");
    						   //$path = opendir($dirname);
    						   while (false !== ($file = readdir($path))) {
    							   if($file!="." && $file!="..") {
    								   if(is_file($dirname."/tmb/".$file))
    									   $files[]=$file;
    								   else
    									   $dirs[]=$dirname."/tmb/".$file;
    							   }
    						   }
    						   if($dirs) {
    							   natcasesort($dirs);
    							   foreach($dirs as $dirname) {
    								   echo $dirname;
    								   read_dir($dirname);
    							   }
    						   }
    						   if($files) {
    							   natcasesort($files);
    							   foreach ($files as $file)
    							   	echo "<td width='25%' align='center'>";
    								   echo "<a href=\"#\" onclick=\"workaround('$dirname/web/$file',$width+400,$height+400); return false;\">[img]$dirname/tmb/$file[/img]</a>
    
    ";						   
    							   }
    							}
    						   	//closedir($path);
    						
    						
    						//Start with:
    						
    						$path=$dirname;
    						read_dir($path);
    Sapete aiutarmi per favore?Grazie mille....

  2. #2
    adesso funziona.
    Però vorrei mettere le immagini 3 per riga.Come diavolo si fà?
    Sto cercando di fare cosi:
    codice:
    echo "<table style=\"text-align:center\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\">"; 
    						echo "<tr>";
    					function read_dir($dirname) {
    						   $path = opendir($dirname . "/tmb/");
    						   //$path = opendir($dirname);
    						   
    						   while (false !== ($file = readdir($path))) {
    							   if($file!="." && $file!="..") {
    								   if(is_file($dirname."/tmb/".$file))
    									   $files[]=$file;
    								   else
    									   $dirs[]=$dirname."/tmb/".$file;
    							   }
    						   }
    						   if($dirs) {
    							   natcasesort($dirs);
    							   foreach($dirs as $dirname) {
    								   echo $dirname;
    								   read_dir($dirname);
    							   }
    						   }
    						   if($files) {
    							   natcasesort($files);
    							   $i = 0;
    							   foreach ($files as $file)
    							   		echo "	<td width='25%' align='center'>
    												<a href=\"#\" onclick=\"workaround('$dirname/web/$file',$width+400,$height+400); return false;\">[img]$dirname/tmb/$file[/img]</a>
    								    		</td>
    											";						   
    									$i++;
    									//se sono alla 4° riga o un multiplo di 2 cambio riga
    									if($i%3==0){
    										echo "</tr><tr>";
    									}
    							   }
    							}
    						   	if($i%3!=0){
    							$mancano = 3-($i%3);//righe mancanti
    							for($j=1;$j<=$mancano;$j++){
    								echo "<td></td>";
    							}
    						}
    						//closedir($path); 
    						//}
    						
    						
    						//Start with:
    						
    						$path=$dirname;
    						read_dir($path);
    ma niente, me le mette tutte in sequenza.
    Aiuto...grazie mille...

  3. #3
    potete aiutarmi per favore?mi sono arenato....

  4. #4
    Originariamente inviato da ANTAGONIA
    potete aiutarmi per favore?mi sono arenato....
    Che fai bari

    Un metodo sbrigativo è questo:
    Codice PHP:
    <?php
    $arr
    =array(1,2,3,4,5,6,7,9,8);
    $i=0;
    $num4;
    // break array over rows
    print '<table border=1>';
    while(
    $i <= count($arr)) {//echo $i."+";
        // row of num items
        
    print '<tr>';
            for(
    $r=1;$r<=$num;$r++) {
            print 
    '<td>'$arr[$i] .'</td>';
            
    $i++;
            }
        print 
    '</tr>';
    }
    print 
    '</table>';
    ?>

    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  5. #5
    grazie per avermi risposto.
    PS: comunque non ho capito in cosa baro.Forse per il Nick?mmmaaa

    allora sto facendo cosi:
    codice:
    echo "	<div id='servizio_ordine'>
    					$value
    					
    
    ";
    					$arr=array(1,2,3,4,5,6,7,9,8); 
    					$i=0; 
    					$num= 4;
    					echo "<table style=\"text-align:center\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\">"; 
    					while($i <= count($arr)) {//echo $i."+"; 
    						echo "<tr>";
    						for($r=1;$r<=$num;$r++) {
    						function read_dir($dirname) {
    						   $path = opendir($dirname . "/tmb/");
    						   //$path = opendir($dirname);
    						   $i = 0;
    						   while (false !== ($file = readdir($path))) {
    							   if($file!="." && $file!="..") {
    								   if(is_file($dirname."/tmb/".$file))
    									   $files[]=$file;
    								   else
    									   $dirs[]=$dirname."/tmb/".$file;
    							   }
    						   }
    						   if($dirs) {
    							   natcasesort($dirs);
    							   foreach($dirs as $dirname) {
    								   echo $dirname;
    								   read_dir($dirname);
    							   }
    						   }
    						   if($files) {
    							   natcasesort($files);
    							   foreach ($files as $file)
    									echo "	<td width='25%' align='center'>
    												<a href=\"#\" onclick=\"workaround('$dirname/web/$file',$width+400,$height+400); return false;\">[img]$dirname/tmb/$file[/img]</a>
    											</td>";						   
    							   }
    							}
    							$i++;
    						}
    					echo"	</tr>";
    				} 
    							$path=$dirname;
    							read_dir($path);
    echo"	</table>";
    ma purtroppo, non funziona...sapresti dirmi il perchè?
    ho fatto duecento prove...ma niente da fà...
    grazie mille.....

  6. #6
    PS: comunque non ho capito in cosa baro.Forse per il Nick?mmmaaa
    in

    mi sono arenato
    dovrebbe essere


    mi sono arenata

    ma purtroppo, non funziona...sapresti dirmi il perchè?
    E' un po dura con il codice super incasinato che hai postato
    e senza essere + precisa dividi il tutto in singoli pezzi per
    il debug e poi su quello che non ti aspetti domanda.

    Consiglio:

    metti un bel

    error_reporting(E_ALL);

    in cima alla pagina ad
    esempio quando utilizzi un array
    lo devi inizializzare in questo modo

    $nomeArray= array();

    dopo lo puoi utilizzare come hai fatto tu.


    $arr=array(1,2,3,4,5,6,7,9,8);

    il mio era un esempio !





    PS.
    Per cominciare cambia
    if($dirs) e if($files)

    in

    if(count($dirs) > 0)

    if(count($files) > 0)
    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  7. #7
    grazie ancora, ho fatto come mi hai detto, ma ho un problema con la variabile $dirs:

    codice:
    //Undefined variable: dirs in line 69
    
    if(count($dirs) > 0){
    cioè?

  8. #8
    credo, che non essendo dichiarate possano restituire questo errore comunque si risolve cosi no?
    codice:
    //dichiarazione
    $dirs = array();
    if(count($dirs) > 0){
    Un'altro problema è per $REMOTE_ADDR, come si dichiara?

    grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.