Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Condizioni IF ELSE

  1. #1

    Condizioni IF ELSE

    Ho una pagina con il seguente script che dovrebbe servire per ridurre la grandezza (larghezza e altezza) delle immagini che vengono inviate al server tramite upload ma mi da il seguente errore:

    Parse error: parse error, unexpected T_ELSE in D:\................\inserisci.php on line 32

    Codice PHP:

    list($larghezza$altezza) = getimagesize($uploaddir.$file_name);
    ///////////////////////////////
    if($larghezza == 1600) {
    $a=$larghezza/100*13;
    $b=$altezza/100*13;
    } else
    (
    $larghezza >= 1500); {
    $a=$larghezza/100*14;
    $b=$altezza/100*14;
    } else 
    ///////////questa è la linea 32
    ($larghezza >= 1400); {
    $a=$larghezza/100*15;
    $b=$altezza/100*15;
    } else 
    (
    $larghezza >= 1300);{
    $a=$larghezza/100*16;
    $b=$altezza/100*16;
    } else 
    (
    $larghezza >= 1200); {
    $a=$larghezza/100*17;
    $b=$altezza/100*17;
    } else {
    (
    $larghezza >= 1100); //{
    $a=$larghezza/100*19;
    $b=$altezza/100*19;
    } else 
    (
    $larghezza >= 1000); {
    $a=$larghezza/100*20;
    $b=$altezza/100*20;
    } else 
    (
    $larghezza >= 900); {
    $a=$larghezza/100*23;
    $b=$altezza/100*23;
    } else 
    (
    $larghezza >= 800); {
    $a=$larghezza/100*25;
    $b=$altezza/100*25;
    } else 
    (
    $larghezza >= 700); {
    $a=$larghezza/100*29;
    $b=$altezza/100*29;
    } else 
    (
    $larghezza >= 600); {
    $a=$larghezza/100*34;
    $b=$altezza/100*34;
    } else 
    (
    $larghezza >= 500); {
    $a=$larghezza/100*40;
    $b=$altezza/100*40;
    } else 
    (
    $larghezza >= 400); {
    $a=$larghezza/100*50;
    $b=$altezza/100*50;
    } else 
    (
    $larghezza >= 300); {
    $a=$larghezza/100*67;
    $b=$altezza/100*67

    Qualcuno mi sa dire dove sbaglio

  2. #2
    devi usare
    if
    elseif
    elseif
    elseif
    ...
    else

    altrimenti usi una sintassi scorretta

  3. #3
    Ho moldificato in questo modo
    ma mi da questo errore
    Parse error: parse error, unexpected T_ELSEIF in D:\................\inserisci.php on line 32

    Codice PHP:
    if($larghezza == 1600) {
    $a=$larghezza/100*13;
    $b=$altezza/100*13;
    } elseif
    (
    $larghezza >= 1500); {
    $a=$larghezza/100*14;
    $b=$altezza/100*14;
    } elseif
    (
    $larghezza >= 1400); {
    $a=$larghezza/100*15;
    $b=$altezza/100*15;
    } elseif 
    (
    $larghezza >= 1300);{
    $a=$larghezza/100*16;
    $b=$altezza/100*16;
    } elseif 
    (
    $larghezza >= 1200); {
    $a=$larghezza/100*17;
    $b=$altezza/100*17;
    } elseif 
    (
    $larghezza >= 1100); {
    $a=$larghezza/100*19;
    $b=$altezza/100*19;
    } elseif 
    (
    $larghezza >= 1000); {
    $a=$larghezza/100*20;
    $b=$altezza/100*20;
    } elseif 
    (
    $larghezza >= 900); {
    $a=$larghezza/100*23;
    $b=$altezza/100*23;
    } elseif 
    (
    $larghezza >= 800); {
    $a=$larghezza/100*25;
    $b=$altezza/100*25;
    } elseif 
    (
    $larghezza >= 700); {
    $a=$larghezza/100*29;
    $b=$altezza/100*29;
    } elseif 
    (
    $larghezza >= 600); {
    $a=$larghezza/100*34;
    $b=$altezza/100*34;
    } elseif 
    (
    $larghezza >= 500); {
    $a=$larghezza/100*40;
    $b=$altezza/100*40;
    } elseif 
    (
    $larghezza >= 400); {
    $a=$larghezza/100*50;
    $b=$altezza/100*50;
    } elseif
    (
    $larghezza >= 300); {
    $a=$larghezza/100*67;
    $b=$altezza/100*67


  4. #4
    l'ultimo deve essere un else e non un elseif
    inoltre dopo le condizioni
    elseif($larghezza >= 1500); non ci va il ;

  5. #5
    Ok ho modificato come mi hai detto e per quanto riguarda l'IF funziona.
    Però mi sono accorto che così come ho fatto lo script è sbagliato in effetti mi riduce sempre l'immagine al 67% anche se essa ha una larghezza di 1600px.
    Oggi sto proprio nel pallone, più degli altri giorni.
    Sono graditi aiuti.
    CMQ Grazie

  6. #6

  7. #7
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Prova cosi....

    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    
    <html>
    <head>
    <title>Untitled</title>
    </head>
    <body>
    <? 
    function array_pos_by_key($aValue,$anArray) {
     $localArray = $anArray;
     krsort($localArray);
     reset($localArray);
     foreach ($localArray as $key => $localValue) {
      if ($aValue >= $key) {
    	 return $localValue;
    	} // if ($localValue >= $aValue)
     } // foreach ($localArray as $localValue)
     return false;
    } // function array_pos(aValue,anArray)
    
    $arr = array(1600 => 13, 1500 => 14, 1400 => 15, 1300 => 16, 1200 => 19, 1000 => 20, 
                 900 => 23, 800 => 25, 700 => 29, 600 => 34, 500 => 40, 400 => 50, 300 => 67);
    						 
    print  array_pos_by_key(2500,$arr);
    ?>
    </body>
    </html>

  8. #8
    Scusa il ritardo ma è colpa del maltempo.
    Non ho capito cosa fare

  9. #9
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    E' solo una funzione che consente di ricavare la percentuale a partire da un array le cui chiavi sono composte dalle dimensioni dell'immagine.

    Copialo e fa variare la dimensione dell'immagine (primo parametro) e guarda il risultato.

  10. #10
    Grazie,
    la piccola funzione, funziona alla grande.



    alla prossima.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.