Dear all,<br>First of all, I would like to say thanks to all of you who has been helped me, so I have succeed to build my openser server. Thank you very much. Thanks <br>Now, I am building a serweb. So, the client can register easily from their computer to the openser server. So, they can join the voip communication by using the openser server that I have been built.<br>But, When I tried to build the serweb, I have a problem. This is the error message that I have received from the client browser:<br> <div class="MsoNormal"><b>Parse error</b>: parse error, unexpected T_VARIABLE in <b>/var/www/html/serweb/config.php</b> on line <b>217</b><br> <br> <b>Fatal error</b>: Failed opening required 'var/www/phplib/db_mysql.inc' (include_path='.:/usr/share/pear') in <b>/var/www/html/serweb/user_interface/prepend.php</b> on line <b>23</b></div> What`s wrong in the configuration? I do hope anyone can help me..Please..<br><br>2. can openser use serweb? because as I know,
serweb is used for SER. or the openser has it`s own <span style="font-weight: bold;">"serweb"</span>? can anybody can tell me what is it?<br><br><br><span style="font-weight: bold;">Note:</span><br>This is the configuration in serweb that I have made. I am so sorry because the configuration is too long. Sorry.<br><br><span style="font-weight: bold;">1. config.php</span><br> <div class="MsoPlainText"><?</div> <div class="MsoPlainText">/*</div> <div class="MsoPlainText"><span style=""> </span>* $Id: config.php,v 1.30 2003/12/12 22:03:10 jiri Exp $</div> <div class="MsoPlainText"><span style=""> </span>*/</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText">class Csub_not {</div> <div class="MsoPlainText"><span style=""> </span>var $uri, $desc;</div> <div class="MsoPlainText"><span style=""> </span>function Csub_not($uri,
$desc){</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->uri=$uri;</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->desc=$desc;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText">}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText">class CREG_list_item {</div> <div class="MsoPlainText"><span style=""> </span>var $reg, $label;</div> <div class="MsoPlainText"><span style=""> </span>function CREG_list_item($reg, $label){</div> <div class="MsoPlainText"><span style=""> </span><span style="">
</span>$this->reg=$reg;</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->label=$label;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText">}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText">class Capplet_params {</div> <div class="MsoPlainText"><span style=""> </span>var $name, $value;</div> <div class="MsoPlainText"><span style=""> </span>function Capplet_params($name, $value){</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->name=$name;</div> <div class="MsoPlainText"><span style=""> </span><span style="">
</span>$this->value=$value;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText">}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText">class Ctab{</div> <div class="MsoPlainText"><span style=""> </span>var $name, $page, $enabled;</div> <div class="MsoPlainText"><span style=""> </span>function Ctab($enabled, $name, $page){</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->name=$name;</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->page=$page;</div> <div class="MsoPlainText"><span style=""> </span><span style="">
</span>$this->enabled=$enabled;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText">}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText">class Cconfig {</div> <div class="MsoPlainText"><span style=""> </span>var $db_host;</div> <div class="MsoPlainText"><span style=""> </span>var $db_name;</div> <div class="MsoPlainText"><span style=""> </span>var $db_user;</div> <div class="MsoPlainText"><span style=""> </span>var $db_pass;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $table_subscriber;</div> <div class="MsoPlainText"><span style="">
</span>var $table_pending;</div> <div class="MsoPlainText"><span style=""> </span>var $table_grp;</div> <div class="MsoPlainText"><span style=""> </span>var $table_aliases;</div> <div class="MsoPlainText"><span style=""> </span>var $table_location;</div> <div class="MsoPlainText"><span style=""> </span>var $table_missed_calls;</div> <div class="MsoPlainText"><span style=""> </span>var $table_accounting;</div> <div class="MsoPlainText"><span style=""> </span>var $table_phonebook;</div> <div class="MsoPlainText"><span style=""> </span>var $table_event;</div> <div class="MsoPlainText"><span style=""> </span>var $table_netgeo_cache;</div> <div class="MsoPlainText"><span style=""> </span>var
$table_ser_mon;</div> <div class="MsoPlainText"><span style=""> </span>var $table_ser_mon_agg;</div> <div class="MsoPlainText"><span style=""> </span>var $table_message_silo;</div> <div class="MsoPlainText"><span style=""> </span>var $table_voice_silo;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $voice_silo_dir;</div> <div class="MsoPlainText"><span style=""> </span>var $greetings_spool_dir;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $show_voicemail_acl;</div> <div class="MsoPlainText"><span style=""> </span>var $show_voice_silo;</div> <div
class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $enable_dial_voicemail;</div> <div class="MsoPlainText"><span style=""> </span>var $setup_jabber_account;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $enable_test_firewall;</div> <div class="MsoPlainText"><span style=""> </span>var $stun_applet_width;</div> <div class="MsoPlainText"><span style=""> </span>var $stun_applet_height;</div> <div class="MsoPlainText"><span style=""> </span>var $stun_class;</div> <div class="MsoPlainText"><span style=""> </span>var $stun_archive;</div> <div class="MsoPlainText"><span
style=""> </span>var $stun_server;</div> <div class="MsoPlainText"><span style=""> </span>var $stun_port;</div> <div class="MsoPlainText"><span style=""> </span>var $stun_retransmit;</div> <div class="MsoPlainText"><span style=""> </span>var $stun_sourceport;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $grp_values;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $realm;</div> <div class="MsoPlainText"><span style=""> </span>var $domainname;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div
class="MsoPlainText"><span style=""> </span>var $first_alias_number;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $new_alias_expires;</div> <div class="MsoPlainText"><span style=""> </span>var $new_alias_q;</div> <div class="MsoPlainText"><span style=""> </span>var $new_alias_callid;</div> <div class="MsoPlainText"><span style=""> </span>var $new_alias_cseq;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $pre_uid_expires;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span
style=""> </span>var $psignature;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $web_contact;</div> <div class="MsoPlainText"><span style=""> </span>var $fifo_server;</div> <div class="MsoPlainText"><span style=""> </span>var $reply_fifo_filename;</div> <div class="MsoPlainText"><span style=""> </span>var $reply_fifo_path;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $fifo_aliases_table;</div> <div class="MsoPlainText"><span style=""> </span>var $ul_table;</div> <div class="MsoPlainText"><span style=""> </span>var
$ul_priority;</div> <div class="MsoPlainText"><span style=""> </span>var $ul_replication;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $im_length;</div> <div class="MsoPlainText"><span style=""> </span>var $default_domain;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $root_path;</div> <div class="MsoPlainText"><span style=""> </span>var $root_uri;</div> <div class="MsoPlainText"><span style=""> </span>var $img_src_path;</div> <div class="MsoPlainText"><span style=""> </span>var $js_src_path;</div> <div class="MsoPlainText"><span
style=""> </span>var $style_src_path;</div> <div class="MsoPlainText"><span style=""> </span>var $zonetab_file;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $charset;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $default_width;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $num_of_showed_items;</div> <div class="MsoPlainText"><span style=""> </span>var $max_showed_rows;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div>
<div class="MsoPlainText"><span style=""> </span>var $enable_tabs;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $sub_not;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $mail_header_from;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $mail_forgot_pass;</div> <div class="MsoPlainText"><span style=""> </span>var $forgot_pass_subj;</div> <div class="MsoPlainText"><span style=""> </span>var $mail_register;</div> <div class="MsoPlainText"><span
style=""> </span>var $register_subj;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>// web pages which should be virtually included<span style=""> </span>in beginning and</div> <div class="MsoPlainText"><span style=""> </span>// end of every serweb page</div> <div class="MsoPlainText"><span style=""> </span>var $prolog;</div> <div class="MsoPlainText"><span style=""> </span>var $separator;</div> <div class="MsoPlainText"><span style=""> </span>var $epilog;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $terms_and_conditions;</div> <div
class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $metar_event_uri;</div> <div class="MsoPlainText"><span style=""> </span>var $metar_from_sip_uri;</div> <div class="MsoPlainText"><span style=""> </span>var $metar_na_message;</div> <div class="MsoPlainText"><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span>var $ser_moni_marginal_period_length;</div> <div class="MsoPlainText"><span style=""> </span>var $ser_moni_aggregation_interval;</div> <div class="MsoPlainText"><span style=""> </span>var $clear_text_pw;</div> <div class="MsoPlainText"><span style=""> </span>var $ul_multidomain;</div> <div
class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>var $ctd_target;</div> <div class="MsoPlainText"><span style=""> </span>var $ctd_uri;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>function Cconfig(){</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>////////////////////////////////////////////////////////////////</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>//<span style=""> </span>configure database</div> <div class="MsoPlainText"><!--[if
!supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* these are the defaults with which SER installs; if you changed</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>the SER account for MySQl, you need to update here </div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->db_host="202.95.149.250";<span style=""> </span><span style=""> </span>//database
host</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->db_name="openser";<span style=""> </span><span style=""> </span><span style=""> </span>//database name</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->db_user="openser";<span style=""> </span><span style=""> </span><span style=""> </span>//database conection user</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->db_pass="openserrw";<span style=""> </span><span style=""> </span><span
style=""> </span>//database conection password</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* ------------------------------------------------------------*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/*<span style=""> </span>basic local configuration options<span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style="">
</span>/* ------------------------------------------------------------*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* you need to align these values to your local server settings */</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* the web path bellow which serweb's "admin" and "user_interface" </div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>directories begin to spread; If set up to be in root (http://www/admin ...),</div> <div class="MsoPlainText"><span style=""> </span>set just "/" here. Set a specific path otherwise, e.g.,
"/iptel/html/". </div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>Don't forget trailing slash.<span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>Hint: if path incorrect, image buttons do not show up</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->root_path="/serweb/";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* roo uri of your server */</div> <div class="MsoPlainText"><span
style=""> </span><span style=""> </span>/* $this->root_uri="http://192.168.2.16"; */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->root_uri="http://".$_SERVER['SERVER_NAME'];</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* where is your zone file on your server ? */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->zonetab_file =<span style=""> </span>"/usr/share/zoneinfo/zone.tab";</div> <div class="MsoPlainText"><span style=""> </span><span style="">
</span>/* serweb will send confirmation emails and SIP IMs -- what sender </div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>address should it claim ?</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>should appear in them ?</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->mail_header_from="registrar@pcr.ac.id";<span style=""> </span><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span><span
style=""> </span>$this->web_contact="sip:daemon@202.95.149.250";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* spool directory with voicemail messages */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->voice_silo_dir = '/var/spool/voicemail/'; </div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* directory with voicemail greetings */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->greetings_spool_dir = '/var/greetings/';</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/*
serweb talks to SER via FIFO -- this is FIFO's name,</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>it must have the same value as SER's fifo config param</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->fifo_server="/tmp/openser_fifo";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* these are absolute web paths to HTML documents surrounding</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>serweb pages -- these may typically
include banner, trailers,</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>and whatever else appropriate to your web design; make sure</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>the values point to existing files; the files should include</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>at least:</div> <div class="MsoPlainText"><span style=""> </span>prolog: <body> or <body><h1>, etc.</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>separator: may be empty, or
</h1><hr> etc.</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>epilog: </body></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->prolog="/serweb/prolog.html";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->separator="/serweb/separator.html";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->epilog="/serweb/epilog.html";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div
class="MsoPlainText"><span style=""> </span><span style=""> </span>/* content of html <title> tag */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->title="sip.pcr.ac.id, the IP Telephony Site";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* your domain name */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->realm="pcr.ac.id"</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->domainname="pcr.ac.id"</div> <div
class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->default_domain="pcr.ac.id"</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>ereg_replace( "(www\.|sip\.)?(.*)", "\\2",<span style=""> </span>$_SERVER['SERVER_NAME']);</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* initial nummerical alias for new subscriber -- don't forget to</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>align your SER routing script to it !</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div>
<div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->first_alias_number=82000;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* info email address */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->infomail<span style=""> </span>=<span style=""> </span>"info@pcr.ac.id";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* email address for questions concerning
registration */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->regmail<span style=""> </span>=<span style=""> </span>"registrar@pcr.ac.id";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* alternate development settings ...</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->zonetab_file =<span style=""> </span>"d:/data/http/iptel/_data/zone.tab";<span style=""> </span><span style=""> </span></div> <div class="MsoPlainText"><span
style=""> </span><span style=""> </span>$this->root_path="/~iptel/";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->mail_header_from="php.kk@kufr.cz";<span style=""> </span><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->voice_silo_dir = 'c:/temp/'; </div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->greetings_spool_dir = 'c:/temp/';</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->fifo_server="d:/temp/tmp";<span
style=""> </span><span style=""> </span><span style=""> </span>//path to fifo server</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* ------------------------------------------------------------*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* serweb appearance<span
style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* ------------------------------------------------------------*/</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* which tabs should show in user's profile ? those set to false</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>by default are experimental features which have not
been tested</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>yet</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->enable_tabs[1]=true;<span style=""> </span><span style=""> </span><span style=""> </span><span style=""> </span>//enable tab my account</div> <div class="MsoPlainText"><span
style=""> </span><span style=""> </span>$this->enable_tabs[2]=true;<span style=""> </span><span style=""> </span><span style=""> </span><span style=""> </span>//enable tab phonebook</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->enable_tabs[3]=true;<span style=""> </span><span style=""> </span><span style=""> </span>//enable tab missed calls</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->enable_tabs[4]=true;<span style=""> </span><span
style=""> </span><span style=""> </span>//enable tab accounting</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->enable_tabs[5]=true;<span style=""> </span><span style=""> </span><span style=""> </span><span style=""> </span>//enable tab send IM</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->enable_tabs[6]=false;<span style=""> </span><span style=""> </span><span style=""> </span>//enable tab notification subscription</div> <div
class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->enable_tabs[7]=true;<span style=""> </span><span style=""> </span><span style=""> </span>//enable tab message store</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* admin tabs definitions</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>Ctab (enabled, name_of_tab, php_script)</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div>
<div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->admin_tabs[]=new Ctab (true, "users", "users.php");</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->admin_tabs[]=new Ctab (true, "server monitoring", "openser_moni.php");</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->default_width=564;<span style=""> </span><span style=""> </span><span style=""> </span><span style=""> </span>//width of usable area</div> <div class="MsoPlainText"><!--[if
!supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->num_of_showed_items=20; <span style=""> </span>/* num of showed items in the list of users */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->max_showed_rows=50;<span style=""> </span><span style=""> </span>/* maximum of showed items in "user find" */</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* show test firewall/NAT button (see also advanced FW/NAT settings bellow */</div> <div class="MsoPlainText"><span
style=""> </span><span style=""> </span>$this->enable_test_firewall=false;<span style=""> </span></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* experimental/incomplete features turned off: voicemail</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>and set up a jabber account for each new SIP user too</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span
style=""> </span>$this->show_voicemail_acl=false; /* show voicemail in ACL list */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->show_voice_silo=false; /* show voice messages in silo too */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->enable_dial_voicemail=false;</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->enable_tabs[8]=false;<span style=""> </span><span style=""> </span><span style=""> </span>//enable tab voicemail</div> <div class="MsoPlainText"><span style=""> </span><span
style=""> </span>$this->setup_jabber_account=false;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* ------------------------------------------------------------*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* ACLs<span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span
style=""> </span>/* ------------------------------------------------------------*/</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* there may be SIP contacts which you wish to prevent from being added</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>through serweb to avoid loops, forwarding to unfriendly domains, etc.</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>use these REGexs<span style=""> </span>to specify which contacts you do not wish;</div> <div class="MsoPlainText"><span
style=""> </span><span style=""> </span>the first value includes banned REs, the second displays error message</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>displayed to users if they attempt to introduce a banned contact</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->denny_reg[]=new CREG_list_item("gateway\.pcr.ac.id$","local forwarding prohibited");</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->denny_reg[]=new CREG_list_item("gateway","gateway
contacts prohibited");</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* SER configuration script may check for group membership of users </div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>identified using digest authentication; e.g., it may only allow</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>international calls to callers who are members of 'int' group;</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>this is a list of groups that serweb allows to set -- they need
to</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>correspond to names of groups used in SER's membership checks</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->grp_values[]="voicemail";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->grp_values[]="ld";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->grp_values[]="local";</div> <div class="MsoPlainText"><span style=""> </span><span
style=""> </span>$this->grp_values[]="int";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* ------------------------------------------------------------*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* text<span style=""> </span><span style=""> </span><span style=""> </span><span
style=""> </span><span style=""> </span><span style=""> </span><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* ------------------------------------------------------------*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* human-readable text containing messages displayed to users</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>in web or sent by email; you may
need to hire a lawyer ,</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>a word-smith, a diplomat or a translator to get it right :)</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* text of password-reminder email */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->forgot_pass_subj="your login information";</div> <div class="MsoPlainText"><span
style=""> </span><span style=""> </span>$this->mail_forgot_pass="Hello,\n".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"now you can access to your account at the folowing URL within 1 hour:\n".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->root_uri.$this->root_path."user_interface/my_account.php?#session#\n\n".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"We recommend change your password after you login\n\n";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div>
<div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* text of confirmation email sent during account registration<span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->register_subj="Your ".$this->domainname." Registration";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->mail_register=</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"Thank you for registering with ".$this->domainname.".\n\n".</div> <div class="MsoPlainText"><span style=""> </span><span
style=""> </span>"We are reserving the following SIP address for you: #sip_address#\n\n".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"To finalize your registration please check the following URL within ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"24 hours:\n".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->root_uri.$this->root_path."user_interface/reg/confirmation.php?nr=#confirm#\n\n".</div> <div class="MsoPlainText"><span style=""> </span><span
style=""> </span>"(If you confirm later you will have to re-register.)\n\n".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"Windows Messenger users may look at additional configuration hints at\n".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"http://www.iptel.org/phpBB/viewtopic.php?topic=11&forum=1&0\n";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* terms and conditions as they appear on the subscription webpage */</div> <div class="MsoPlainText"><span style="">
</span><span style=""> </span>$this->terms_and_conditions=</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"BY PRESSING THE 'I ACCEPT' BUTTON, YOU (HEREINAFTER THE 'USER') ARE ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"STATING THAT YOU AGREE TO ACCEPT AND BE BOUND BY ALL OF THE TERMS AND ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"CONDITIONS OF THIS AGREEMENT.<span style=""> </span>DO NOT PROCEED IF YOU ARE UNABLE TO AGREE".</div> <div class="MsoPlainText"><span style="">
</span><span style=""> </span>" TO THE TERMS AND CONDITIONS OF THIS AGREEMENT. THESE TERMS AND CONDITIONS ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"OF SERVICE FOR USE OF ".$this->domainname." SIP SERVER (THE 'AGREEMENT')".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>" CONSTITUTE A LEGALLY BINDING CONTRACT BETWEEN ".$this->domainname.</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>" AND THE ENTITY THAT AGREES TO AND ACCEPTS THESE TERMS AND CONDITIONS. ".</div> <div class="MsoPlainText"><span
style=""> </span><span style=""> </span>"ACCESS TO ".$this->domainname."'s SESSION INITIATION PROTOCOL SERVER ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"('SIP SERVER') IS BEING PROVIDED ON AN 'AS IS' AND 'AS AVAILABLE' BASIS, ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"AND ".$this->domainname." MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"KIND, WHETHER EXPRESS OR IMPLIED, WITH RESPECT TO USER'S ACCESS OF THE ".</div> <div
class="MsoPlainText"><span style=""> </span><span style=""> </span>"SIP SERVER, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"NONINFRINGEMENT, TITLE OR FITNESS FOR A PARTICULAR PURPOSE. FURTHER, ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->domainname." MAKES NO REPRESENTATIONS OR WARRANTIES THAT THE SIP ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"SERVER, OR USER'S ACCESS THERETO, WILL BE AVAILABLE AT ANY GIVEN TIME,
".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"OR WILL BE FREE FROM ERRORS, DEFECTS, OMISSIONS, INACCURACIES, OR FAILURES".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>" OR DELAYS IN DELIVERY OF DATA. USER ASSUMES, AND ".$this->domainname.</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>" DISCLAIM, TOTAL RISK, RESPONSIBILITY, AND LIABILITY FOR USER'S ACCESS TO ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"AND USE OF THE SIP SERVER.\n\n".</div> <div
class="MsoPlainText"><span style=""> </span><span style=""> </span>"Access to ".$this->domainname." SIP Server is being provided on a ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"non-exclusive basis. User acknowledges and understands that ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->domainname." SIP site is in a developmental stage and that ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->domainname." makes no guarantees regarding the availability or ".</div> <div
class="MsoPlainText"><span style=""> </span><span style=""> </span>"functionality thereof. User may not sublicense its access rights to the ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"SIP Server to any third party. \n\n".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"USER AGREES TO INDEMNIFY, DEFEND AND HOLD iptel.org, ITS AFFILIATES, ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"DIRECTORS, OFFICERS, EMPLOYEES, AGENTS AND LICENSORS HARMLESS FROM AND ".</div> <div
class="MsoPlainText"><span style=""> </span><span style=""> </span>"AGAINST ANY AND ALL CLAIMS, ACTIONS, EXPENSES, LOSSES, AND LIABILITIES ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"(INCLUDING COURTS COSTS AND REASONABLE ATTORNEYS' FEES), ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"ARISING FROM OR RELATING TO THIS AGREEMENT INCLUDING USER'S ACCESS TO ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"AND USE OF THE SIP SERVER TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW,".</div>
<div class="MsoPlainText"><span style=""> </span><span style=""> </span>" IN NO EVENT SHALL ".$this->domainname." OR ANY OF ITS LICENSORS, BE LIABLE ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"FOR ANY INDIRECT, SPECIAL, PUNITIVE, EXEMPLARY, OR CONSEQUENTIAL DAMAGES, ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"ARISING OUT OF THE ACCESS TO OR USE OF OR INABILITY TO ACCESS OR USE THE ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"SIP SERVER, OR THAT RESULT FROM MISTAKES, OMISSIONS,
INTERRUPTIONS, ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"DELETIONS OF FILES, ERRORS, DEFECTS, DELAYS IN TRANSMISSION OR OPERATION OR ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"ANY FAILURE OF PERFORMANCE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"DAMAGES. \n\n".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"If User commits, in ".$this->domainname."'s<span style=""> </span>sole determination, a
default ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"of these terms and conditions, ".$this->domainname." may immediately ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"terminate User's access to the SIP Server. Furthermore, ".$this->domainname.</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>" reserves the right to discontinue offering access to the SIP Server at any ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"time. \n\n".</div> <div
class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"User may not assign its rights hereunder without the prior written ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"consent of ".$this->domainname.". User agrees to comply with all laws, ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"regulations and other legal requirements that apply to these terms and ".</div> <div class="MsoPlainText"><span style=""> </span><span
style=""> </span>"conditions.<span style=""> </span>\n\n".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"If any provision of this Agreement is held to be unenforceable for any ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"reason, such provision shall be reformed only to the extent necessary to ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"comply with applicable laws, and the remainder shall remain in full force ".</div> <div class="MsoPlainText"><span style=""> </span><span
style=""> </span>"and effect. \n\n".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"Any failure of ".$this->domainname." to enforce any provision of this ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"Agreement shall not constitute a waiver of any rights under such provision ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"or any other provision of this Agreement. \n\n".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"USER
ACKNOWLEDGES THAT IT HAS READ THIS AGREEMENT, UNDERSTANDS IT, AND ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"AGREES THAT IT IS THE COMPLETE AND EXCLUSIVE STATEMENT OF THE ENTIRE ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"AGREEMENT BETWEEN COMPANY AND ".$this->domainname." WITH RESPECT TO THE ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"SUBJECT MATTER HEREIN, AND SUPERSEDES ALL PRIOR AND CONTEMPORANEOUS ".</div> <div class="MsoPlainText"><span style=""> </span><span style="">
</span>"PROPOSALS, DISCUSSIONS, AGREEMENTS, UNDERSTANDINGS, AND COMMUNICATIONS, ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"WHETHER WRITTEN OR ORAL AND MAY BE AMENDED ONLY IN A WRITING EXECUTED BY ".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"BOTH USER AND ".$this->domainname.". \n\n";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* =========================================================== */</div> <div class="MsoPlainText"><span style=""> </span>/* ADVANCED SETTINGS<span
style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* =========================================================== */</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* ------------------------------------------------------------*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* applications (experimental)<span
style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* ------------------------------------------------------------*/</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* subscribe-notify -- list of events to which a user can subscribe and</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>is then notified with an instant message, if they occur; experimental</div> <div
class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->sub_not[]=new Csub_not("sip:weather@pcr.ac.id".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>";type=temperature;operator=lt;value=0","temperature is too low");</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->sub_not[]=new Csub_not("sip:weather@pcr.ac.id".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>";type=wind;operator=gt;value=10","wind is too
fast");</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->sub_not[]=new Csub_not("sip:weather@pcr.ac.id;".</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"type=pressure;operator=lt;value=1000","pressure is too low");</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->sub_not[]=new Csub_not("sip:weather@pcr.ac.id;type=metar",</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"send METAR data");</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span
style=""> </span><span style=""> </span>/* metar wheather application */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>//this is an identificator in event table for sending METAR data</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->metar_event_uri="sip:weather@pcr.ac.id;type=metar";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>//from header in sip message</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->metar_from_sip_uri="sip:daemon@pcr.ac.id";</div> <div class="MsoPlainText"><span style="">
</span><span style=""> </span>// N/A message - is sended to user when we can't get his location or METAR data</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->metar_na_message="sorry we can't get your location or METAR data for you";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* ------------------------------------------------------------*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/*<span style="">
</span>configure FW/NAT detection applet<span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* ------------------------------------------------------------*/</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* the applet is used to detect whether user is behind firewall or NAT */</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>//width of NAT detection applet</div> <div
class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->stun_applet_width=350;<span style=""> </span><span style=""> </span><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>//height of NAT detection applet</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->stun_applet_height=100;<span style=""> </span><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span><span style="">
</span>//starting class of NAT detection applet</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->stun_class="STUNClientApplet.class"; </div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>//jar archive with NAT detection applet - optional - you can comment </div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>// it if you don't use jar archive</div> <div class="MsoPlainText"><span style=""> </span>$this->stun_archive="STUNClientApplet.jar";<span style=""> </span></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div
class="MsoPlainText"><span style=""> </span><span style=""> </span>/* applet parameters: */</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* STUN server address - must be same as web server address because </div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>the java security manager allows only this one</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->stun_applet_param[]=new
Capplet_params("server", "sip.pcr.ac.id");</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* STUN server port. The Default value is 1221 - optional - you can comment </div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>it if you want use default value</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->stun_applet_param[]=new Capplet_params("port", 1221);</div> <div class="MsoPlainText"><span style="">
</span><span style=""> </span>/* destination port for the first probing attempt -- just set up a simple</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>tcp echo server there; we use the first TCP connection to determine</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>local IP address, which can't be learned from systems setting due to</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>security manager ; default is 5060</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style="">
</span><span style=""> </span>$this->stun_applet_param[]=new Capplet_params("tcp_dummyport", 5061);</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* Number of times to resend a STUN message to a STUN server. The </div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>Default is 9 times - optional - you can comment it if you want </div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>use default value</div> <div class="MsoPlainText"><span style=""> </span><span
style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>// $this->stun_applet_param[]=new Capplet_params("retransmit", 9);</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* Specify source port of UDP packet to be sent from. The Default value </div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>is 5000 - optional - you can comment it if you want use default value</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span
style=""> </span><span style=""> </span>// $this->stun_applet_param[]=new Capplet_params("sourceport", 5000);</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* ------------------------------------------------------------*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/*<span style=""> </span>configure server monitoring<span style=""> </span><span
style=""> </span><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* ------------------------------------------------------------*/</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* if you change this values, please delete all data from table<span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>"table_ser_mon_agg" and "table_ser_mon" by reason that the </div> <div
class="MsoPlainText"><span style=""> </span><span style=""> </span>aggregated data may be calculated bad if you don't do it</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* length of marginal period in seconds */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->ser_moni_marginal_period_length=60*5;<span style=""> </span>//5 minutes</div> <div class="MsoPlainText"><span style="">
</span></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* length of interval (in seconds) for which will data stored, </div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>data older then this interval will be deleted</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->ser_moni_aggregation_interval=60*15;<span style=""> </span>//15 minut</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span
style=""> </span>/* ------------------------------------------------------------*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/*<span style=""> </span>click to dial<span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* ------------------------------------------------------------*/</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span
style=""> </span><span style=""> </span>/* address of the final destination to which we want to transfer</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>initial CSeq and CallId */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->ctd_target="sip:23@202.95.14.250";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* address of user wishing to initiate conversation */</div> <div class="MsoPlainText"><span style=""> </span><span style="">
</span>$this->ctd_uri="sip:44@202.95.149.250";</div> <div class="MsoPlainText"><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* from header for click-to-dial request */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->ctd_from<span style=""> </span>=<span style=""> </span>"sip:controller@pcr.ac.id";</div> <div class="MsoPlainText"><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* ------------------------------------------------------------*/</div> <div
class="MsoPlainText"><span style=""> </span><span style=""> </span>/* Values you typically do NOT want to change unless you know<span style=""> </span>*</div> <div class="MsoPlainText"><span style=""> </span>/* well what you are doing<span style=""> </span>*</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* ------------------------------------------------------------*/</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span
style=""> </span>/* Unless you used brute-force to change SER table names */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->table_subscriber="subscriber";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->table_pending="pending";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->table_grp="grp";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->table_aliases="aliases";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->table_location="location";</div>
<div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->table_missed_calls="missed_calls";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->table_accounting="acc";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->table_phonebook="phonebook";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->table_event="event";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->table_netgeo_cache="netgeo_cache";</div> <div class="MsoPlainText"><span style=""> </span><span
style=""> </span>$this->table_ser_mon="server_monitoring";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->table_ser_mon_agg="server_monitoring_agg";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->table_message_silo="silo";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->table_voice_silo="voice_silo";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* these are table names as reffered from script and via FIFO */</div> <div class="MsoPlainText"><span
style=""> </span><span style=""> </span>$this->ul_table="location";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->fifo_aliases_table="aliases";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* relative paths of serweb tree */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->img_src_path =<span style=""> </span>$this->root_path."img/";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->js_src_path =<span
style=""> </span>$this->root_path."styles/";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->style_src_path = $this->root_path."styles/";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->user_pages_path = $this->root_path."user_interface/";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->admin_pages_path = $this->root_path."admin/";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* values used for names of reply fifos -- they change radnomly */</div> <div
class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->reply_fifo_filename="webfifo_".rand();</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->reply_fifo_path="/tmp/".$this->reply_fifo_filename;</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* development value</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->reply_fifo_path="d:/temp/".$this->reply_fifo_filename; */<span style=""> </span></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style="">
</span><span style=""> </span>/* serweb version */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->psignature="Web_interface_Karel_Kozlik-0.9";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* IM paging configuration */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->charset="windows-1250";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->im_length=1300;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div
class="MsoPlainText"><span style=""> </span><span style=""> </span>/* expiration times, priorities, etc. for usrloc/alias contacts */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->new_alias_expires='567648000';</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->new_alias_q=1.00;</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->new_alias_callid="web_call_id@fox";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->new_alias_cseq=1;</div> <div class="MsoPlainText"><span style=""> </span><span
style=""> </span>$this->ul_priority="1.00";</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* replication support ? (a new ser feature) */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->ul_replication=1;</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* fifo expects usernames AND domainnames ? make sure this</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>option is synchronized with usrloc's use_domain option<span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span
style=""> </span>$this->ul_multidomain=0;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* seconds in which expires "get pass session" */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->pre_uid_expires=3600;<span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>/* is the sql database query for user authentication formed</div> <div class="MsoPlainText"><span style=""> </span><span
style=""> </span>with clear text password or a hashed one; the former is less</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>secure the latter works even if password hash is incorrect,</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>which sometimes happens, when it is calculated from an</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>incorrect domain during installation process</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span><span
style=""> </span>$this->clear_text_pw=1;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText">}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText">$config=new Cconfig();</div> <div class="MsoPlainText">?></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div><span style="font-weight: bold;"> 2. db_mysql.inc</span> <div class="MsoPlainText"><?php</div> <div class="MsoPlainText">/*</div> <div class="MsoPlainText"><span style=""> </span>* Session Management for PHP3</div> <div class="MsoPlainText"><span style=""> </span>*</div> <div class="MsoPlainText"><span style=""> </span>* Copyright (c) 1998-2000 NetUSE AG</div> <div
class="MsoPlainText"><span style=""> </span>*<span style=""> </span>Boris Erdmann, Kristian Koehntopp</div> <div class="MsoPlainText"><span style=""> </span>*</div> <div class="MsoPlainText"><span style=""> </span>* $Id: db_mysql.inc,v 1.1.1.1 2002/09/04 18:19:57 kozlik Exp $</div> <div class="MsoPlainText"><span style=""> </span>*</div> <div class="MsoPlainText"><span style=""> </span>*/ </div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText">class DB_Sql {</div> <div class="MsoPlainText"><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span>/* public: connection parameters */</div> <div class="MsoPlainText"><span style=""> </span>var $Host<span style=""> </span>= "localhost";</div> <div
class="MsoPlainText"><span style=""> </span>var $Database = "openser";</div> <div class="MsoPlainText"><span style=""> </span>var $User<span style=""> </span>= "openser";</div> <div class="MsoPlainText"><span style=""> </span>var $Password = "openserrw";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* public: configuration parameters */</div> <div class="MsoPlainText"><span style=""> </span>var $Auto_Free<span style=""> </span>= 0;<span style=""> </span>## Set to 1 for automatic mysql_free_result()</div> <div class="MsoPlainText"><span style=""> </span>var $Debug<span style=""> </span>= 0;<span style=""> </span>## Set to 1 for debugging messages.</div> <div class="MsoPlainText"><span
style=""> </span>var $Halt_On_Error = "yes"; ## "yes" (halt with message), "no" (ignore errors quietly), "report" (ignore errror, but spit a warning)</div> <div class="MsoPlainText"><span style=""> </span>var $Seq_Table<span style=""> </span>= "db_sequence";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* public: result array and current row number */</div> <div class="MsoPlainText"><span style=""> </span>var $Record<span style=""> </span>= array();</div> <div class="MsoPlainText"><span style=""> </span>var $Row;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* public: current error number and error text */</div> <div class="MsoPlainText"><span style=""> </span>var $Errno<span
style=""> </span>= 0;</div> <div class="MsoPlainText"><span style=""> </span>var $Error<span style=""> </span>= "";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* public: this is an api revision, not a CVS revision. */</div> <div class="MsoPlainText"><span style=""> </span>var $type<span style=""> </span>= "mysql";</div> <div class="MsoPlainText"><span style=""> </span>var $revision = "1.2";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* private: link and query handles */</div> <div class="MsoPlainText"><span style=""> </span>var $Link_ID<span style=""> </span>= 0;</div> <div class="MsoPlainText"><span style=""> </span>var $Query_ID = 0;</div> <div
class="MsoPlainText"><span style=""> </span></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* public: constructor */</div> <div class="MsoPlainText"><span style=""> </span>function DB_Sql($query = "") {</div> <div class="MsoPlainText"><span style=""> </span>$this->query($query);</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* public: some trivial reporting */</div> <div class="MsoPlainText"><span style=""> </span>function link_id() {</div> <div class="MsoPlainText"><span style=""> </span>return $this->Link_ID;</div> <div
class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>function query_id() {</div> <div class="MsoPlainText"><span style=""> </span>return $this->Query_ID;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* public: connection management */</div> <div class="MsoPlainText"><span style=""> </span>function connect($Database = "", $Host = "", $User = "", $Password = "") {</div> <div class="MsoPlainText"><span style=""> </span>/* Handle defaults */</div> <div class="MsoPlainText"><span style=""> </span>if ("" == $Database)</div> <div class="MsoPlainText"><span
style=""> </span>$Database = $this->Database;</div> <div class="MsoPlainText"><span style=""> </span>if ("" == $Host)</div> <div class="MsoPlainText"><span style=""> </span>$Host<span style=""> </span>= $this->Host;</div> <div class="MsoPlainText"><span style=""> </span>if ("" == $User)</div> <div class="MsoPlainText"><span style=""> </span>$User<span style=""> </span>= $this->User;</div> <div class="MsoPlainText"><span style=""> </span>if ("" == $Password)</div> <div class="MsoPlainText"><span style=""> </span>$Password = $this->Password;</div> <div class="MsoPlainText"><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span>/* establish connection, select database
*/</div> <div class="MsoPlainText"><span style=""> </span>if ( 0 == $this->Link_ID ) {</div> <div class="MsoPlainText"><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span>$this->Link_ID=mysql_pconnect($Host, $User, $Password);</div> <div class="MsoPlainText"><span style=""> </span>if (!$this->Link_ID) {</div> <div class="MsoPlainText"><span style=""> </span>$this->halt("pconnect($Host, $User, \$Password) failed.");</div> <div class="MsoPlainText"><span style=""> </span>return 0;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>if
(!@mysql_select_db($Database,$this->Link_ID)) {</div> <div class="MsoPlainText"><span style=""> </span>$this->halt("cannot use database ".$Database);</div> <div class="MsoPlainText"><span style=""> </span>return 0;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span>return $this->Link_ID;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* public: discard the query result */</div> <div class="MsoPlainText"><span style=""> </span>function free()
{</div> <div class="MsoPlainText"><span style=""> </span>@mysql_free_result($this->Query_ID);</div> <div class="MsoPlainText"><span style=""> </span>$this->Query_ID = 0;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* public: perform a query */</div> <div class="MsoPlainText"><span style=""> </span>function query($Query_String) {</div> <div class="MsoPlainText"><span style=""> </span>/* No empty queries, please, since PHP4 chokes on them. */</div> <div class="MsoPlainText"><span style=""> </span>if ($Query_String == "")</div> <div class="MsoPlainText"><span style=""> </span>/* The empty query string is passed on from the constructor,</div> <div
class="MsoPlainText"><span style=""> </span>* when calling the class without a query, e.g. in situations</div> <div class="MsoPlainText"><span style=""> </span>* like these: '$db = new DB_Sql_Subclass;'</div> <div class="MsoPlainText"><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span>return 0;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>if (!$this->connect()) {</div> <div class="MsoPlainText"><span style=""> </span>return 0; /* we already complained in connect() about that. */</div> <div class="MsoPlainText"><span style=""> </span>};</div> <div class="MsoPlainText"><!--[if
!supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span># New query, discard previous result.</div> <div class="MsoPlainText"><span style=""> </span>if ($this->Query_ID) {</div> <div class="MsoPlainText"><span style=""> </span>$this->free();</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>if ($this->Debug)</div> <div class="MsoPlainText"><span style=""> </span>printf("Debug: query = %s<br>\n", $Query_String);</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>$this->Query_ID =
@mysql_query($Query_String,$this->Link_ID);</div> <div class="MsoPlainText"><span style=""> </span>$this->Row<span style=""> </span>= 0;</div> <div class="MsoPlainText"><span style=""> </span>$this->Errno = mysql_errno();</div> <div class="MsoPlainText"><span style=""> </span>$this->Error = mysql_error();</div> <div class="MsoPlainText"><span style=""> </span>if (!$this->Query_ID) {</div> <div class="MsoPlainText"><span style=""> </span>$this->halt("Invalid SQL: ".$Query_String);</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span># Will return nada if it fails. That's fine.</div> <div class="MsoPlainText"><span style="">
</span>return $this->Query_ID;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* public: walk result set */</div> <div class="MsoPlainText"><span style=""> </span>function next_record() {</div> <div class="MsoPlainText"><span style=""> </span>if (!$this->Query_ID) {</div> <div class="MsoPlainText"><span style=""> </span>$this->halt("next_record called with no query pending.");</div> <div class="MsoPlainText"><span style=""> </span>return 0;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>$this->Record =
@mysql_fetch_array($this->Query_ID);</div> <div class="MsoPlainText"><span style=""> </span>$this->Row<span style=""> </span>+= 1;</div> <div class="MsoPlainText"><span style=""> </span>$this->Errno<span style=""> </span>= mysql_errno();</div> <div class="MsoPlainText"><span style=""> </span>$this->Error<span style=""> </span>= mysql_error();</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>$stat = is_array($this->Record);</div> <div class="MsoPlainText"><span style=""> </span>if (!$stat && $this->Auto_Free) {</div> <div class="MsoPlainText"><span style=""> </span>$this->free();</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span
style=""> </span>return $stat;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* public: position in result set */</div> <div class="MsoPlainText"><span style=""> </span>function seek($pos = 0) {</div> <div class="MsoPlainText"><span style=""> </span>$status = @mysql_data_seek($this->Query_ID, $pos);</div> <div class="MsoPlainText"><span style=""> </span>if ($status)</div> <div class="MsoPlainText"><span style=""> </span>$this->Row = $pos;</div> <div class="MsoPlainText"><span style=""> </span>else {</div> <div class="MsoPlainText"><span style=""> </span>$this->halt("seek($pos) failed: result has ".$this->num_rows()." rows.");</div> <div
class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* half assed attempt to save the day, </div> <div class="MsoPlainText"><span style=""> </span>* but do not consider this documented or even</div> <div class="MsoPlainText"><span style=""> </span>* desireable behaviour.</div> <div class="MsoPlainText"><span style=""> </span>*/</div> <div class="MsoPlainText"><span style=""> </span>@mysql_data_seek($this->Query_ID, $this->num_rows());</div> <div class="MsoPlainText"><span style=""> </span>$this->Row = $this->num_rows();</div> <div class="MsoPlainText"><span style=""> </span>return 0;</div> <div class="MsoPlainText"><span
style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>return 1;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* public: table locking */</div> <div class="MsoPlainText"><span style=""> </span>function lock($table, $mode = "write") {</div> <div class="MsoPlainText"><span style=""> </span>$query = "lock tables ";</div> <div class="MsoPlainText"><span style=""> </span>if (is_array($table)) {</div> <div class="MsoPlainText"><span style=""> </span>while (list($key,$value) = each($table)) {</div> <div class="MsoPlainText"><span style="">
</span>if (!is_int($key)) {</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>// texts key are "read", "read local", "write", "low priority write"</div> <div class="MsoPlainText"><span style=""> </span>$query .= "$value $key, ";</div> <div class="MsoPlainText"><span style=""> </span>} else {</div> <div class="MsoPlainText"><span style=""> </span>$query .= "$value $mode, ";</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span>$query = substr($query,0,-2);</div> <div class="MsoPlainText"><span
style=""> </span>} else {</div> <div class="MsoPlainText"><span style=""> </span>$query .= "$table $mode";</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span>$res = $this->query($query);</div> <div class="MsoPlainText"><span style=""> </span>if (!$res) {</div> <div class="MsoPlainText"><span style=""> </span>$this->halt("lock() failed.");</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>return 0;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span>return $res;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span></div> <div
class="MsoPlainText"><span style=""> </span>function unlock() {</div> <div class="MsoPlainText"><span style=""> </span>$res = $this->query("unlock tables");</div> <div class="MsoPlainText"><span style=""> </span>if (!$res) {</div> <div class="MsoPlainText"><span style=""> </span>$this->halt("unlock() failed.");</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span>return $res;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* public: evaluate the result (size, width) */</div> <div class="MsoPlainText"><span style=""> </span>function affected_rows() {</div> <div class="MsoPlainText"><span style="">
</span>return @mysql_affected_rows($this->Link_ID);</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>function num_rows() {</div> <div class="MsoPlainText"><span style=""> </span>return @mysql_num_rows($this->Query_ID);</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>function num_fields() {</div> <div class="MsoPlainText"><span style=""> </span>return @mysql_num_fields($this->Query_ID);</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span
style=""> </span>/* public: shorthand notation */</div> <div class="MsoPlainText"><span style=""> </span>function nf() {</div> <div class="MsoPlainText"><span style=""> </span>return $this->num_rows();</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>function np() {</div> <div class="MsoPlainText"><span style=""> </span>print $this->num_rows();</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>function f($Name) {</div> <div class="MsoPlainText"><span style=""> </span>if (isset($this->Record[$Name])) {</div> <div class="MsoPlainText"><span
style=""> </span>return $this->Record[$Name];</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>function p($Name) {</div> <div class="MsoPlainText"><span style=""> </span>if (isset($this->Record[$Name])) {</div> <div class="MsoPlainText"><span style=""> </span>print $this->Record[$Name];</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* public: sequence numbers */</div> <div
class="MsoPlainText"><span style=""> </span>function nextid($seq_name) {</div> <div class="MsoPlainText"><span style=""> </span>$this->connect();</div> <div class="MsoPlainText"><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span>if ($this->lock($this->Seq_Table)) {</div> <div class="MsoPlainText"><span style=""> </span>/* get sequence number (locked) and increment */</div> <div class="MsoPlainText"><span style=""> </span>$q<span style=""> </span>= sprintf("select nextid from %s where seq_name = '%s'",</div> <div class="MsoPlainText"><span style=""> </span>$this->Seq_Table,</div> <div class="MsoPlainText"><span style="">
</span>$seq_name);</div> <div class="MsoPlainText"><span style=""> </span>$id<span style=""> </span>= @mysql_query($q, $this->Link_ID);</div> <div class="MsoPlainText"><span style=""> </span>$res = @mysql_fetch_array($id);</div> <div class="MsoPlainText"><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span>/* No current value, make one */</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>if (!is_array($res)) {</div> <div class="MsoPlainText"><span style=""> </span>$currentid = 0;</div> <div class="MsoPlainText"><span style=""> </span>$q = sprintf("insert into %s values('%s', %s)",</div> <div class="MsoPlainText"><span
style=""> </span>$this->Seq_Table,</div> <div class="MsoPlainText"><span style=""> </span>$seq_name,</div> <div class="MsoPlainText"><span style=""> </span>$currentid);</div> <div class="MsoPlainText"><span style=""> </span>$id = @mysql_query($q, $this->Link_ID);</div> <div class="MsoPlainText"><span style=""> </span>} else {</div> <div class="MsoPlainText"><span style=""> </span>$currentid = $res["nextid"];</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span
style=""> </span>$nextid = $currentid + 1;</div> <div class="MsoPlainText"><span style=""> </span>$q = sprintf("update %s set nextid = '%s' where seq_name = '%s'",</div> <div class="MsoPlainText"><span style=""> </span>$this->Seq_Table,</div> <div class="MsoPlainText"><span style=""> </span>$nextid,</div> <div class="MsoPlainText"><span style=""> </span>$seq_name);</div> <div class="MsoPlainText"><span style=""> </span>$id = @mysql_query($q, $this->Link_ID);</div> <div class="MsoPlainText"><span style=""> </span>$this->unlock();</div> <div class="MsoPlainText"><span
style=""> </span>} else {</div> <div class="MsoPlainText"><span style=""> </span>$this->halt("cannot lock ".$this->Seq_Table." - has it been created?");</div> <div class="MsoPlainText"><span style=""> </span>return 0;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span>return $nextid;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* public: return table metadata */</div> <div class="MsoPlainText"><span style=""> </span>function metadata($table = "", $full = false) {</div> <div class="MsoPlainText"><span style=""> </span>$count = 0;</div> <div class="MsoPlainText"><span
style=""> </span>$id<span style=""> </span>= 0;</div> <div class="MsoPlainText"><span style=""> </span>$res<span style=""> </span>= array();</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/*</div> <div class="MsoPlainText"><span style=""> </span>* Due to compatibility problems with Table we changed the behavior</div> <div class="MsoPlainText"><span style=""> </span>* of metadata();</div> <div class="MsoPlainText"><span style=""> </span>* depending on $full, metadata returns the following values:</div> <div class="MsoPlainText"><span style=""> </span>*</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>* - full is false (default):</div>
<div class="MsoPlainText"><span style=""> </span>* $result[]:</div> <div class="MsoPlainText"><span style=""> </span>*<span style=""> </span>[0]["table"]<span style=""> </span>table name</div> <div class="MsoPlainText"><span style=""> </span>*<span style=""> </span>[0]["name"]<span style=""> </span>field name</div> <div class="MsoPlainText"><span style=""> </span>*<span style=""> </span>[0]["type"]<span style=""> </span>field type</div> <div class="MsoPlainText"><span style=""> </span>*<span style=""> </span>[0]["len"]<span style=""> </span>field length</div> <div class="MsoPlainText"><span style=""> </span>*<span style=""> </span>[0]["flags"]<span style=""> </span>field flags</div> <div class="MsoPlainText"><span
style=""> </span>*</div> <div class="MsoPlainText"><span style=""> </span>* - full is true</div> <div class="MsoPlainText"><span style=""> </span>* $result[]:</div> <div class="MsoPlainText"><span style=""> </span>*<span style=""> </span>["num_fields"] number of metadata records</div> <div class="MsoPlainText"><span style=""> </span>*<span style=""> </span>[0]["table"]<span style=""> </span>table name</div> <div class="MsoPlainText"><span style=""> </span>*<span style=""> </span>[0]["name"]<span style=""> </span>field name</div> <div class="MsoPlainText"><span style=""> </span>*<span style=""> </span>[0]["type"]<span style=""> </span>field type</div> <div class="MsoPlainText"><span style="">
</span>*<span style=""> </span>[0]["len"]<span style=""> </span>field length</div> <div class="MsoPlainText"><span style=""> </span>*<span style=""> </span>[0]["flags"]<span style=""> </span>field flags</div> <div class="MsoPlainText"><span style=""> </span>*<span style=""> </span>["meta"][field name]<span style=""> </span>index of field named "field name"</div> <div class="MsoPlainText"><span style=""> </span>*<span style=""> </span>This last one could be used if you have a field name, but no index.</div> <div class="MsoPlainText"><span style=""> </span>*<span style=""> </span>Test:<span style=""> </span>if (isset($result['meta']['myfield'])) { ...</div> <div class="MsoPlainText"><span style=""> </span>*/</div> <div class="MsoPlainText"><!--[if
!supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>// if no $table specified, assume that we are working with a query</div> <div class="MsoPlainText"><span style=""> </span>// result</div> <div class="MsoPlainText"><span style=""> </span>if ($table) {</div> <div class="MsoPlainText"><span style=""> </span>$this->connect();</div> <div class="MsoPlainText"><span style=""> </span>$id = @mysql_list_fields($this->Database, $table);</div> <div class="MsoPlainText"><span style=""> </span>if (!$id) {</div> <div class="MsoPlainText"><span style=""> </span>$this->halt("Metadata query failed.");</div> <div class="MsoPlainText"><span style=""> </span>return false;</div> <div
class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span>} else {</div> <div class="MsoPlainText"><span style=""> </span>$id = $this->Query_ID; </div> <div class="MsoPlainText"><span style=""> </span>if (!$id) {</div> <div class="MsoPlainText"><span style=""> </span>$this->halt("No query specified.");</div> <div class="MsoPlainText"><span style=""> </span>return false;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span>$count = @mysql_num_fields($id);</div> <div
class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>// made this IF due to performance (one if is faster than $count if's)</div> <div class="MsoPlainText"><span style=""> </span>if (!$full) {</div> <div class="MsoPlainText"><span style=""> </span>for ($i=0; $i<$count; $i++) {</div> <div class="MsoPlainText"><span style=""> </span>$res[$i]["table"] = @mysql_field_table ($id, $i);</div> <div class="MsoPlainText"><span style=""> </span>$res[$i]["name"]<span style=""> </span>= @mysql_field_name<span style=""> </span>($id, $i);</div> <div class="MsoPlainText"><span style=""> </span>$res[$i]["type"]<span style=""> </span>= @mysql_field_type<span style=""> </span>($id,
$i);</div> <div class="MsoPlainText"><span style=""> </span>$res[$i]["len"]<span style=""> </span>= @mysql_field_len<span style=""> </span>($id, $i);</div> <div class="MsoPlainText"><span style=""> </span>$res[$i]["flags"] = @mysql_field_flags ($id, $i);</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span>} else { // full</div> <div class="MsoPlainText"><span style=""> </span>$res["num_fields"]= $count;</div> <div class="MsoPlainText"><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span>for ($i=0; $i<$count; $i++) {</div> <div class="MsoPlainText"><span style=""> </span>$res[$i]["table"] =
@mysql_field_table ($id, $i);</div> <div class="MsoPlainText"><span style=""> </span>$res[$i]["name"]<span style=""> </span>= @mysql_field_name<span style=""> </span>($id, $i);</div> <div class="MsoPlainText"><span style=""> </span>$res[$i]["type"]<span style=""> </span>= @mysql_field_type<span style=""> </span>($id, $i);</div> <div class="MsoPlainText"><span style=""> </span>$res[$i]["len"]<span style=""> </span>= @mysql_field_len<span style=""> </span>($id, $i);</div> <div class="MsoPlainText"><span style=""> </span>$res[$i]["flags"] = @mysql_field_flags ($id, $i);</div> <div class="MsoPlainText"><span style=""> </span>$res["meta"][$res[$i]["name"]] = $i;</div> <div class="MsoPlainText"><span
style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span>// free the result only if we were called on a table</div> <div class="MsoPlainText"><span style=""> </span>if ($table) {</div> <div class="MsoPlainText"><span style=""> </span>@mysql_free_result($id);</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span>return $res;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* public: find available table names */</div> <div
class="MsoPlainText"><span style=""> </span>function table_names() {</div> <div class="MsoPlainText"><span style=""> </span>$this->connect();</div> <div class="MsoPlainText"><span style=""> </span>$h = @mysql_query("show tables", $this->Link_ID);</div> <div class="MsoPlainText"><span style=""> </span>$i = 0;</div> <div class="MsoPlainText"><span style=""> </span>while ($info = @mysql_fetch_row($h)) {</div> <div class="MsoPlainText"><span style=""> </span>$return[$i]["table_name"]<span style=""> </span>= $info[0];</div> <div class="MsoPlainText"><span style=""> </span>$return[$i]["tablespace_name"] = $this->Database;</div> <div class="MsoPlainText"><span style=""> </span>$return[$i]["database"]<span style=""> </span>=
$this->Database;</div> <div class="MsoPlainText"><span style=""> </span>$i++;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><span style=""> </span></div> <div class="MsoPlainText"><span style=""> </span>@mysql_free_result($h);</div> <div class="MsoPlainText"><span style=""> </span>return $return;</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>/* private: error handling */</div> <div class="MsoPlainText"><span style=""> </span>function halt($msg) {</div> <div class="MsoPlainText"><span style=""> </span>$this->Error = @mysql_error($this->Link_ID);</div> <div class="MsoPlainText"><span style="">
</span>$this->Errno = @mysql_errno($this->Link_ID);</div> <div class="MsoPlainText"><span style=""> </span>if ($this->Halt_On_Error == "no")</div> <div class="MsoPlainText"><span style=""> </span>return;</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>$this->haltmsg($msg);</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span style=""> </span>if ($this->Halt_On_Error != "report")</div> <div class="MsoPlainText"><span style=""> </span>die("Session halted.");</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><span
style=""> </span>function haltmsg($msg) {</div> <div class="MsoPlainText"><span style=""> </span>printf("</td></tr></table><b>Database error:</b> %s<br>\n", $msg);</div> <div class="MsoPlainText"><span style=""> </span>printf("<b>MySQL Error</b>: %s (%s)<br>\n",</div> <div class="MsoPlainText"><span style=""> </span><span style=""> </span>$this->Errno,</div> <div class="MsoPlainText"><span style=""> </span>$this->Error);</div> <div class="MsoPlainText"><span style=""> </span>}</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText">}</div> <div class="MsoPlainText">?></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div><span style="font-weight: bold;"> 3. prepend.php</span> <div
class="MsoPlainText"><?php</div> <div class="MsoPlainText">/*</div> <div class="MsoPlainText"><span style=""> </span>* Session Management for PHP3</div> <div class="MsoPlainText"><span style=""> </span>*</div> <div class="MsoPlainText"><span style=""> </span>* Copyright (c) 1998-2000 NetUSE AG</div> <div class="MsoPlainText"><span style=""> </span>*<span style=""> </span>Boris Erdmann, Kristian Koehntopp</div> <div class="MsoPlainText"><span style=""> </span>*</div> <div class="MsoPlainText"><span style=""> </span>* $Id: prepend.php,v 1.1.1.1 2002/09/04 18:19:41 kozlik Exp $</div> <div class="MsoPlainText"><span style=""> </span>*</div> <div class="MsoPlainText"><span style=""> </span>*/ </div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div
class="MsoPlainText">$_PHPLIB = array();</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"># Can't control your include path?</div> <div class="MsoPlainText"># Point this to your PHPLIB base directory. Use a trailing "/"!</div> <div class="MsoPlainText">$_PHPLIB["libdir"]<span style=""> </span>= "var/www/phplib/";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText">require "../config.php";</div> <div class="MsoPlainText">require "../functions.php";</div> <div class="MsoPlainText">require "../page.php";</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText">require($_PHPLIB["libdir"] . "db_mysql.inc");<span style=""> </span>/* Change this to
match your database. */</div> <div class="MsoPlainText">require($_PHPLIB["libdir"] . "ct_sql.inc");<span style=""> </span>/* Change this to match your data storage container */</div> <div class="MsoPlainText">require($_PHPLIB["libdir"] . "session.inc");<span style=""> </span>/* Required for everything below.<span style=""> </span>*/</div> <div class="MsoPlainText">require($_PHPLIB["libdir"] . "auth.inc");<span style=""> </span>/* Disable this, if you are not using authentication. */</div> <div class="MsoPlainText">require($_PHPLIB["libdir"] . "perm.inc");<span style=""> </span>/* Disable this, if you are not using permission checks. */</div> <div class="MsoPlainText">require($_PHPLIB["libdir"] . "user.inc");<span style=""> </span>/* Disable this, if you are not using per-user variables. */</div> <div
class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText">/* Additional require statements go below this line */</div> <div class="MsoPlainText"># require($_PHPLIB["libdir"] . "menu.inc");<span style=""> </span>/* Enable to use Menu */</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText">/* Additional require statements go before this line */</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText">require($_PHPLIB["libdir"] . "local.inc");<span style=""> </span>/* Required, contains your local configuration. */</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText">require($_PHPLIB["libdir"] . "page.inc");<span
style=""> </span>/* Required, contains the page management functions. */</div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> <div class="MsoPlainText">?></div> <div class="MsoPlainText"><!--[if !supportEmptyParas]--> <!--[endif]--><o:p></o:p></div> I do hope anybody can help me..I am so sorry because this message is too long..Sorry..Thank you very much.. Thank you<br><br><br>Regards,<br><br><br>Ferianto<br><br><p>
                <hr size=1>Do you Yahoo!?<br> Next-gen email? Have it all with the <a href="http://us.rd.yahoo.com/evt=42241/*http://advision.webevents.yahoo.com/handraisers"> all-new Yahoo! Mail Beta.</a><p> 
        
                <hr size=1>Do you Yahoo!?<br> Everyone is raving about the <a href="http://us.rd.yahoo.com/evt=42297/*http://advision.webevents.yahoo.com/handraisers"> all-new Yahoo! Mail Beta.</a>