Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc
Comunitatea PHP Romania
 

Problema constanta define
Vezi mesajul original

 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> Cod PHP
Subiectul anterior :: Subiectul următor  
Autor Mesaj
Xposed



Data înscrierii: 11/Ian/2006
Mesaje: 98

Trimis: Mie Feb 06, 2008 10:38 am    Titlul subiectului: Problema constanta define  

Am in confing.php asa:

Citat: // Maintenance constant

define("MAINTENANCE", false);

In site.php am:
Citat:
$strContent .= ' <table border="0" cellspacing="0" cellpadding="8" width="100%" height="100%">';

if(MAINTENANCE === true){
$strContent .= ' <tr valign="middle">
<td align="center" width="100%" class="despre_noi">
<center><img src="images/click2.jpg" border="0"/><br>
<img src="images/click.jpg" border="0"/></center>
</td>
</tr>
</table>';
$GLOBALS['content'] .= $strContent;
return true;
}


Totul merge ok cand pun manual in config.php MAINTENANCE true sau false insa eu vreau sa extrag din baza de date aceasta valoare si am facut cam asa:

Citat:
$conexiune = mysql_connect(hostname,username,password) or die("Nu ma pot conecta la MySQL!");
mysql_select_db(db, $conexiune) or die("Nu gasesc baza de date!");

$cerereSQL = 'SELECT * FROM `settings`';
$rezultat = mysql_query($cerereSQL);
while($rand = mysql_fetch_array($rezultat))
{
$sitename = $rand['sitename'];
$maintenance = $rand['maintenance'];
}


am pus in loc de define("MAINTENANCE", false); - efine("MAINTENANCE", $maintenance); insa nu merge.

Unde am gresit?

Va multumesc mult
Sus  
mihaitha



Data înscrierii: 04/Mai/2007
Mesaje: 1912
Locație: Sibiu

Trimis: Mie Feb 06, 2008 11:42 am    Titlul subiectului:  

Ai gresit la conceptie. define() iti declara o constanta, practic un alias de nume pentru o valoare scalara. Este gandita pentru chestii de genul define('PI', 3.141759262), ca sa nu mai scrii de fiecare data carnatul ala, sau pentru a folosi un nume sugestiv in locul unor valori care la prima vedere nu ar spune nimic (pentru portabilitatea codului de la un programator la altul).

Oricum, ideea de baza este ca nu se poate asigna unei constante valoarea unei variabile. Al doilea argument al functiei define() trebuie sa fie o valoare scalara.
php.net a scris: value
The value of the constant; only scalar and null values are allowed. Scalar values are integer, float, string or boolean values.

Foloseste-o ca variabila globala daca ii iei valoarea din baza de date. Sporuri.
Sus  
Xposed



Data înscrierii: 11/Ian/2006
Mesaje: 98

Trimis: Mie Feb 06, 2008 11:44 am    Titlul subiectului:  

Mersi mult.
Sus  
PHPRomania Bot
Bot Member


Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google
Trimis: Mie Dec 26, 2007 7:01 pm   Titlul subiectului: Ad  

Sus  
 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> Cod PHP
Pagina 1 din 1


Powered by phpBB 2.0.22 © 2001, 2002 phpBB Group
Varianta în limba română: Romanian phpBB online community