Nelamurire erori Undefined variable /Constant

Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
Stefan
Mesaje: 117

Nelamurire erori Undefined variable /Constant

Salut, am un script de chat dar imi afiseaza urmatoarele erori, cum as putea sa le rezolv ?

Cod: Selectaţi tot

Notice: Undefined variable: online1 in C:\xampp\htdocs\chat\syns_mods\admin\settings.php on line 234
Notice: Use of undefined constant guest_limit - assumed 'guest_limit' in C:\xampp\htdocs\chat\syns_mods\admin\settings.php on line 261
Warning: mysqli_close() expects parameter 1 to be mysqli, array given in C:\xampp\htdocs\chat\syns_mods\admin\settings.php on line 373
Linia 234 :

Cod: Selectaţi tot

<tr><td><b>Chatroom Online?<b></td><td><select name="chat_online"><option value="yes" '.$online1.'>yes<option value="no" '.$online2.'>no</select></td></tr>
Cod:

Cod: Selectaţi tot

if($settings['chat_online'] === "yes"){
$online1 = 'selected="yes"';
}else{
$online2 = 'selected="no"'; }
Linia 261:

Cod: Selectaţi tot

<tr><td><b>Guest limit: (Allow Guest Access must be set to yes)<b></td><td><input type="number" name="guest_limit" value="'.$settings[guest_limit].'"> Guest(s)</td></tr>
Cod:

Cod: Selectaţi tot

$guest_limit = mysqli_real_escape_string($settings, $_POST[guest_limit]);
Linia 373:

Cod: Selectaţi tot

mysqli_close($settings);
Cod:

Cod: Selectaţi tot

$settings = new mysqli($config['dbConnection']['host'],$config['dbConnection']['user'],$config['dbConnection']['pass'],$config['dbConnection']['name']);

MarPlo Mesaje: 4343
Salut
Daca in codul de la linia 234 folosessti $online1 si $online2, modifica codul pt. definirea acelor variabile sa fie asa:

Cod: Selectaţi tot

if($settings['chat_online'] =='yes'){
  $online1 ='selected="selected"';
  $online2 ='';
}else{
  $online1 ='';
  $online2 ='selected="selected"';
} 
Eroarea cu "undefined constant" e fiindca lipsesc ghilimelele de la indexul de array "guest_limit". Se pune asa:

Cod: Selectaţi tot

$settings['guest_limit'] 
Poti sa stergi linia asta de cod pt close mysqli, nu e nevoie de ea:

Cod: Selectaţi tot

// mysqli_close($settings);