else con 2 punti

  • Creatore Discussione Creatore Discussione Shyson
  • Data di inizio Data di inizio

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
Ho visto un codice php che dopo else invece di esserci la solita parentesi graffa ci sono i 2 punti, io lo sto provando funziona, ho provato a metterci le parentesi graffe e non va

Vorrei capire quand'è che si mettono i 2 punti

PHP:
...

if ($errore) :
$ritenta="<META http-equiv=\"REFRESH\" content=\"2; url=http://sito/index.php\">"; 
echo "<div id=\"Bigdiv\">$errore</div>"; 
else :
$meta = "<div id=\"Send-Scrivimi2\">";
$meta .= "<div class=\"tanks-Scrivimi2\">GRAZIE<span class=\"nome-Scrivimi2\">&nbsp;$nome</span><br /><br />";
$meta .= "MESSAGGIO INVIATO!</div>";
$meta .= "</div>";
$meta .= "<META http-equiv=\"REFRESH\" content=\"2; url=http://sito/index.php\">"; 
session_destroy();
 
ciao

Ho visto, io metterei le parentesi graffe, ma funziona solo coi 2 punti
se lo script non è tuo lascialo così com'è se funzia.
se scrivi uno tu: usa le graffe (io le uso sempre anche se in alcuni if o if/else non servirebbero) ci guadagni in seguito guardando (e capendo) meglio quello che hai fatto
 
Be' dipende dove le metti le graffe.
Se funziona con i due punti dovrebbe funzionare con le graffe.
Ci dovrebbe essere un 'endif' se non erro.
Quindi prova:
If{
...
}else{
...
} //la graffa al posto di endif
 
I due punti vengono solitamente usati nelle viste, in applicazioni che adottano totalmente o in parte l'architettura MVC, pur usando PHP come linguaggio di templating. Ma questa sintassi:
PHP:
<?php
if (true):
    // ...
else:
    // ...
endif;
?>
È identica a questa:
PHP:
<?php
if (true) {
    // ...
} else {
    // ...
}
?>
 
Be' dipende dove le metti le graffe.
Se funziona con i due punti dovrebbe funzionare con le graffe.
Ci dovrebbe essere un 'endif' se non erro.
Quindi prova:

endif si trova in fondo prima del html

HTML:
...

if ($errore):
$ritenta="<META http-equiv=\"REFRESH\" content=\"2; url=http://localhost:8888/MIEI%20SITI/Bellezzalive/index.php\">"; 
echo "<div id=\"Bigdiv\">$errore</div>"; 
else:
$meta = "<div id=\"Send-Scrivimi2\">";
$meta .= "<div class=\"tanks-Scrivimi2\">GRAZIE<span class=\"nome-Scrivimi2\">&nbsp;$nome</span><br /><br />";
$meta .= "MESSAGGIO INVIATO!</div>";
$meta .= "</div>";
$meta .= "<META http-equiv=\"REFRESH\" content=\"2; url=http://localhost:8888/MIEI%20SITI/Bellezzalive/index.php\">"; 
session_destroy();

//La newline (\n)  nullificata, cio non fa sballare i CAMPI a video in altezza perch \n = stringa vuota perci˜ non si va a capo
$nome = str_replace("\n","",$nome);
$citta = str_replace("\n","",$citta);
$suoemail = str_replace("\n","",$suoemail);

//nl2br, Quando si preme il tasto-Invio manda a capo nel testo, in php: nl2br  come il <br /> dell' xhtml  
$messaggio = nl2br($messaggio);

// l'ho messo qui perchŽ se  nei controlli iniziali da l'errore "Caratteri non ammessi"
//Spezza la riga al numero massimo di caratteri stabiliti in questo caso Ò90Ó (compresi gli spazi)
//quellÕ1 aggiunto vuol dire che al raggiungimento di 90 manda a capo.
$messaggio = wordwrap($messaggio, 90, "<br />",1);

//Questo codice se il campo  vuoto mette a video la barretta
//l'ho messo qui perchŽ se  nei controlli iniziali da l'errore "Caratteri non ammessi" 
if ($citta == '') {
$citta ="<font style=\"color:#000080\">-</font>";
}
else {
$citta;
}

//formattazione testo
$messaggio = str_replace("[G]","<b>",$messaggio);
$messaggio = str_replace("[/G]","</b>",$messaggio);
$messaggio = str_replace("[C]","<i>",$messaggio);
$messaggio = str_replace("[/C]","</i>",$messaggio);
$messaggio = str_replace("[S]","<u>",$messaggio);
$messaggio = str_replace("[/S]","</u>",$messaggio);

//Colora il testo selezionato
$messaggio = str_replace("[COLOR=cayenne]","<font style=\"color:#800000\">",$messaggio);
$messaggio = str_replace("[COLOR=rosso]","<font style=\"color:red\">",$messaggio);
$messaggio = str_replace("[COLOR=verde]","<font style=\"color:green\">",$messaggio);
$messaggio = str_replace("[COLOR=grigio]","<font style=\"color:gray\">",$messaggio);
$messaggio = str_replace("[/COLOR]","</font>",$messaggio);

//Faccine, vanno messe in QUESTO PUNTO DELLA PAG.
$messaggio = str_replace("CONFUSO","<img src=\"http://photoman.altervista.org/faccine/cxonfuso.gif\" alt=\"Confuso\" title=\"Confuso\" />",$messaggio);
$messaggio = str_replace("IMPOSSIBILE","<img src=\"http://photoman.altervista.org/faccine/ixmpossibile.gif\" alt=\"Impossibile\" title=\"impossibile\" />",$messaggio);
$messaggio = str_replace("TESTARDO","<img src=\"http://photoman.altervista.org/faccine/txestardo.gif\" alt=\"Testardo\" title=\"Testardo\" />",$messaggio);
$messaggio = str_replace("PIANGE","<img src=\"http://photoman.altervista.org/faccine/pxiange.gif\" alt=\"Piange\" title=\"Piange\" />",$messaggio);
$messaggio = str_replace("BACIO","<img src=\"http://photoman.altervista.org/faccine/bxacio.gif\" alt=\"Bacio\" title=\"Bacio\" />",$messaggio);
$messaggio = str_replace("FELICE","<img src=\"http://photoman.altervista.org/faccine/fxelice.gif\" alt=\"Felice\" title=\"Felice\" />",$messaggio);
$messaggio = str_replace("RIDE","<img src=\"http://photoman.altervista.org/faccine/rxide.gif\" alt=\"Ride\" title=\"Ride\" />",$messaggio);
$messaggio = str_replace("OCCHIOLINO","<img src=\"http://photoman.altervista.org/faccine/oxcchiolino.gif\" alt=\"Occhiolino\" title=\"Occhiolino\" />",$messaggio);
$messaggio = str_replace("CIAO","<img src=\"http://photoman.altervista.org/faccine/cxiao.gif\" alt=\"Ciao\" title=\"Ciao\" />",$messaggio);
$messaggio = str_replace("PAURA","<img src=\"http://photoman.altervista.org/faccine/pxaura.gif\" alt=\"Paura\" title=\"Paura\" />",$messaggio);

//Tutto questo codice recupera l'ip del Visitor e lo mette a video con Country e bandierina
//per funzionare deve stare cos“!
function iptocountry($ip) { 
$numbers = explode(".", $ip);

include("ip_flags/ip_files/".$numbers[0].".php"); 
$code=($numbers[0] * 16777216) + ($numbers[1] * 65536) + ($numbers[2] * 256) + ($numbers[3]);
foreach($ranges as $key => $value) { 
if($key<=$code) { 
if($ranges[$key][0]>=$code) {
$two_letter_country_code=$ranges[$key][1];
break;
}
 } 
  } 
if ($two_letter_country_code=="") {
$two_letter_country_code="unknown";
} 
return $two_letter_country_code; 
} 
$ip=$_SERVER['REMOTE_ADDR']; 
$two_letter_country_code=iptocountry($ip);

include("ip_flags/ip_files/countries.php");
$file_to_check="ip_flags/flags/$two_letter_country_code.gif";
if (file_exists($file_to_check)) { 
$bandierina ="&nbsp;&nbsp;&nbsp;<img style=\"border:1px solid #9c9e95;vertical-align:-10%;\" src=\"http://bellezzalive.altervista.org/$file_to_check\" width=\"16\" height=\"12\" alt=\"".$countries[$two_letter_country_code][1]."\" title=\"".$countries[$two_letter_country_code][1]."\" />";
}                                                                                                                                                                                                                                   
else
{ 
$bandierina ="&nbsp;&nbsp;&nbsp;<img style=\"border:1px solid #9c9e95;vertical-align:-10%;\" src=\"http://bellezzalive.altervista.org/res/ip_flags/flags/noflag.gif\" width=\"16\" height=\"12\" alt=\"noflag\" title=\"noflag\" />";
}

$headers  = "MIME-Version: 1.0\r\n";
$headers .= "content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "X-Mailer: PHP\n"; 
$headers .= "From:Bellezzalive<[email protected]>\r\n"; //Questo indirizzo non  valido

$headers1  = "MIME-Version: 1.0\r\n";
$headers1 .= "content-type: text/html; charset=iso-8859-1\r\n";
$headers1 .= "X-Mailer: PHP\n"; 
$headers1 .= "From:$suoemail";

//Messaggio del visitatore a me 
$a = "Me <[email protected]>";  //Questo indirizzo non  valido
$oggetto = "Messaggio del Visitatore";  //Le mail vanno formattate con HTML 
$messaggioMail="<html>
<head>
</head>
<body>
<table>
<tr>
<td>
<p style=\"font-family:arial,verdana;font-size:17px;color:#000080;font-weight:bold;\">
MESSAGGIO DEL VISITATORE :</p>
</td>
</tr>
<tr>
<td>
<p style=\"font-family:arial,verdana;font-size:11px;color:#000080;\">$data_locale</p>
</td>
</tr>
<tr>
<td>
<p style=\"font-family:arial,verdana;font-size:14px;color:#000080;\">
<br />
<br />
<div style=\"width:auto;height:2px;\"><font style=\"color:#666666;\">Nome:</font>&nbsp;&nbsp;$nome</div>
<br />
<div style=\"width:auto;height:2px;\"><font style=\"color:#666666;\">Email:</font>&nbsp;&nbsp;$suoemail</div>
<br />
<div style=\"width:auto;height:2px;\"><font style=\"color:#666666;\">Citt&agrave;:</font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$citta</div>
<br />
<div style=\"width:auto;height:2px;\"><font style=\"color:#666666;\">Country:</font>&nbsp;".$countries[$two_letter_country_code][1]."</div>
<br />
<div style=\"width:auto;height:2px;\"><font style=\"color:#666666;\">Ip:</font>&nbsp;&nbsp;<font style=\"font-family:arial,verdana;font-size:13px;\">$ip</font>&nbsp;$bandierina</div>
<br />
<br />
<p style=\"color:#666666;margin-bottom:10px;\">Messaggio:</p>
$messaggio
<br />
<br />
</p>
</td>
</tr>
</table> 
</body>
</html>";
//Invio della mail 
mail($a,$oggetto,$messaggioMail,$headers1); 

//Invio e-mail di ringraziamento al Visitatore
$suoemail= "$suoemail";
$oggetto1="Ringraziamento"; 
$messaggioMail1="<html>
<head>
</head>
<body>
<table>
<tr>
<td>
<p style=\"font-family:arial,verdana;font-size:17px;color:#000080;font-weight:bold;\">
- RISPOSTA AUTOMATICA -</p>
</td>
</tr>
<tr>
<td>
<p style=\"font-family:arial,verdana;font-size:11px;color:#000080;\">$data_locale</p>
</td>
</tr>
<tr>
<td>
<p style=\"font-family:arial,verdana;font-size:14px;color:#000080;padding-top:15px;\">
<br />
Ciao&nbsp;<b>$nome</b>,
<br />
<br />
grazie per avermi scritto.
<br />
<br />
<br />
A presto,
<br /> 
<font style=\"font-family:arial,verdana;font-size:11px;font-style:italic;color:#000080;\">by Bellezzalive</font>
<br />
<a href=\"http://www.bellezzalive.altervista.org\" style=\"font-family:arial,verdana;font-size:13px;color:#0000ff;text-decoration:none;\">www.bellezzalive.altervista.org</a>
</p>
</td>
</tr>
</table>
<table>
<br />
<tr>
<td>
<p style=\"background-color:#e4e4e4;width:1000px;height:20px;line-height:20px;font-family:arial;font-size:12px;color:#9e0001;\">
----- Original Message -----</p>
</td>
</tr>
<tr>
<td>
<p style=\"background-color:#ededed;width:1000px;\">
$messaggioMail</p>
</td>
</tr>
</table>
</body>
</html>";
//Invio della mail 
mail ($suoemail,$oggetto1,$messaggioMail1,$headers); 
endif;
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it" lang="it">
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript" src="script.js"></script>
<link rel="stylesheet" type="text/css" media="screen" href="style.css" />
<title>Scrivimi2</title>
</head>
	
<body id="scriv2">

<?=$ritenta;?>

<?=$meta;?>

</body>
</html>
 
Be' dipende dove le metti le graffe.
Se funziona con i due punti dovrebbe funzionare con le graffe.
Ci dovrebbe essere un 'endif' se non erro.
Quindi prova:

Ho modificato così e funziona

If{
...
}else{
...
}
//la graffa al posto di endif
 

Discussioni simili