473,408 Members | 1,771 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,408 software developers and data experts.

I am just not seeing it!

3
I made sure there where no white spaces before or after the PHP begin and end tags in all the scripts called from the require_once.

Also these scripts have not really been touched but we upgraded from 4.x to the lastest stable release and switcged from Apache to windows IIS. This was not my idea and I did not perform these tasks. I got left with trying to clean up everything that stopped working

Does anyone see anything that is preventing the Header Location from working:

Thanks in advance
Andrew

Warning: Cannot modify header information - headers already sent by (output started at C:\WWW\slfsrvdemo\fcnlib\depcalcc.class.php:284) in C:\WWW\slfsrvdemo\login.php on line 8

Login Script:
Expand|Select|Wrap|Line Numbers
  1. <?php
  2. error_reporting(E_ALL);
  3. ini_set('display_errors', true);
  4. require_once('fcnlib/application.inc.php'); // This is where the depcalcc is called
  5. header('Location:http://webserver/slfsrvdemo/phhome.php');
  6. phpinfo();
  7. ?>
  8.  
depcalcc script:
Expand|Select|Wrap|Line Numbers
  1. <?php
  2. class DepCalcC
  3. {
  4.     function DepCalcC($w_sex, $w_age, $w_plan_type,
  5.     $w_plan_num, $w_plan_rest, $w_rm_board,
  6.     $w_aft_number, $w_assn, $w_clientnum,
  7.     &$work_prem_out, $w_effect_date, $which_pass,
  8.     &$prem2_out, &$rating_sw, $w_pro_sw,
  9.     $use_prem2_sw_in, $w_which_pass,
  10.     $w_use_prem2_sw, &$work_prem, &$w_rating_sw,
  11.     $rate_exit, &$message_out, $w_plan_ident,
  12.     $w_children, $w_certnum, $gp_use_oldest,
  13.     $gp_rating_age_flag, $gp_rated_by_child,
  14.     $gp_use_sp_rate, $cov_prem2_date,
  15.     $hold_cov_rating, $w_coverage_code, $age_band)
  16.     {
  17.         $t_rate1        = 0;
  18.         $t_rate2        = 0;
  19.         $t_rate3        = 0;
  20.         $t_rate4        = 0;
  21.         $temp_rat        = 0;
  22.         $aft_sw        = 'A';
  23.         $aftemp_rate    = 0;
  24.         $got_assn        = 0;
  25.         $hold_age        = $w_age;
  26.         $hold_sex        = $w_sex;
  27.         $spouse_age        = 0;
  28.  
  29.         $getIni = new ParseConnIni("Admin_Odbc", $usrnm,  
  30.                                                                           $pswd, $dsn);
  31.         $connect = odbc_connect($dsn,$usrnm,$pswd);
  32.  
  33.         if ($_SERVER['adminDbType'] == 'geronimo') {
  34.             $sql = "select spouse_sex,     
  35.                                                                    spouse_birthdate ".
  36.                    "from empmst ".
  37.                    "where assn = $w_assn ".
  38.                    "and clientnum = $w_clientnum ".
  39.                    "and certnum = $w_certnum";
  40.             $result = odbc_exec($connect, $sql);
  41.             $empSpouse_sex = odbc_result  
  42.                                                                                ($result, "spouse_sex");
  43.             $empSpouse_birthdate = odbc_result
  44.                                                                        ($result, "spouse_birthdate");
  45.             odbc_free_result($result);
  46.         }
  47.         if ($_SERVER['adminDbType'] == 'ce') {
  48.             $sql = "select emp1_spouse_bdate ".
  49.                    "from emp ".
  50.                    "where emp1_assn = $w_assn ".
  51.                    "and emp1_clientnum = 
  52.                                                                                    $w_clientnum ".
  53.                    "and emp1_certnum  
  54.                                                                                      = '$w_certnum'";
  55.             $result = odbc_exec($connect, $sql);
  56. //            $empSpouse_sex = odbc_result
  57.                                                                               ($result, "spouse_sex");
  58.             $empSpouse_birthdate = odbc_result
  59.                                                                  ($result, "emp1_spouse_bdate");
  60.         }
  61.  
  62.         if ($gp_use_oldest == 'B') {
  63.             $empSpouse_age = get_age
  64.                                                        ($empSpouse_birhtdate, $w_effect_date);
  65.             $w_age = $empSpouse_age;
  66.             $w_sex = $empSpouse_sex;
  67.         } elseif ($gp_use_oldest == 'O') {
  68.             $empSpouse_age = get_age
  69.                                                        ($empSpouse_birhtdate, $w_effect_date);
  70.             if ($empSpouse_age > $w_age) {
  71.                 $w_age = $empSpouse_age;
  72.                 $w_sex = $empSpouse_sex;
  73.             }
  74.         }
  75.  
  76.         if (!$w_age)
  77.             $w_age = $hold_age;
  78.  
  79.         if (!$w_sex)
  80.             $w_sex = $hold_sex;
  81.  
  82.         $w_room_board = $w_rm_board;
  83.  
  84.         if (!$w_room_board || $w_room_board == '0')
  85.             $w_room_board = '000' ;
  86.  
  87.         $work_prem         = 0;
  88.         $message_code     = '00';
  89.         $w_which_pass     = $which_pass;
  90.         $w_use_prem2_sw = $use_prem2_sw_in;
  91.  
  92.         if (!$w_effect_date) {
  93.             $vMessageCode = '45';
  94.             $msg = new GetMessage($vMessageCode, 
  95.                                                                    $message_out);
  96.             return;
  97.         }
  98.  
  99.         if ($message_code == '00') {
  100.             if ($w_plan_ident == '5' || $w_plan_ident == 'E') 
  101.                                                {
  102.                 $got_assn = $w_assn;
  103.             } elseif ($w_plan_ident == '2' || $w_plan_ident
  104.                                                               == 'B') {
  105.                 $got_assn = 0;
  106.             } elseif ($w_plan_ident == '1' || $w_plan_ident 
  107.                                                             == 'A') {
  108.                 $got_assn = 0;
  109.             }
  110.             if (!$w_room_board || $w_room_board == '0')
  111.                 $w_room_board = '000';
  112.         }
  113.  
  114.         if ($message_code == '00') {
  115.             if($_SERVER['adminDbType'] == 'geronimo') {
  116.                 $sql = "select max(effect_date) ".
  117.                        "from ratc ".
  118.                        "where p_type = 
  119.                                                                                              $w_plan_type ".
  120.                        "and base_code = 
  121.                                                                                              $w_plan_num ".
  122.                   "and code_num = '000  ' ".
  123.                   "and identifier = $w_plan_ident ".
  124.                                    "and room_board = $w_room_board ".
  125.                    "and assn = got_assn ".
  126.                     "and (effect_date < $w_effect_date or ".
  127.              "     effect_date = $w_effect_date)";
  128.             $result = odbc_exec($connect, $sql);
  129.         $got_date = odbc_result($result, "max(effect_date)");
  130.             }
  131.  
  132.             if($_SERVER['adminDbType'] == 'ce') {
  133.                 $cerates = new CeRate();
  134.             $ratcRec = $cerates->fetchRatRecord($w_plan_type, 
  135.                                                                      $w_plan_num, $w_plan_ident,
  136.                             $ceRat_plan_type, $ceRat_plan_num,
  137.                                 $ceRat_identifier, $ceRat_assn,
  138.                                 $ceRat_age, $ceRat_rb, $ceRat_class,
  139.                                 $ceRat_date, $ceRat_unit, $ceRat_twl_rate,
  140.                                 $ceRat_lcd_rate1, $ceRat_lcd_rate2,
  141.                                 $ceRat_activity_date, $ceRat_a_rates_table,
  142.                                 $result, $w_rate1, $w_unit);
  143.                 $w_p_type = $w_plan_type;
  144.                 $w_rate_a1 = substr($ceRat_a_rates_table, 0, 4).".".substr($ceRat_a_rates_table, 4, 4);
  145.                 $w_rate_b1 = substr($ceRat_a_rates_table, 72, 4).".".substr($ceRat_a_rates_table, 76, 4);
  146.                 $w_rate_a2 = substr($ceRat_a_rates_table, 8, 4).".".substr($ceRat_a_rates_table, 12, 4);
  147.                 $w_rate_b2 = substr($ceRat_a_rates_table, 80, 4).".".substr($ceRat_a_rates_table, 84, 4);
  148.                 $w_rate_a3 = substr($ceRat_a_rates_table, 16, 4).".".substr($ceRat_a_rates_table, 20, 4);
  149.                 $w_rate_b3 = substr($ceRat_a_rates_table, 88, 4).".".substr($ceRat_a_rates_table, 92, 4);
  150.                 $w_rate_a4 = substr($ceRat_a_rates_table, 24, 4).".".substr($ceRat_a_rates_table, 28, 4);
  151.                 $w_rate_b4 = substr($ceRat_a_rates_table, 96, 4).".".substr($ceRat_a_rates_table, 100, 4);
  152.                 $w_rate_a5 = substr($ceRat_a_rates_table, 32, 4).".".substr($ceRat_a_rates_table, 36, 4);
  153.                 $w_rate_b5 = substr($ceRat_a_rates_table, 104, 4).".".substr($ceRat_a_rates_table, 108, 4);
  154.                 $w_rate_a6 = substr($ceRat_a_rates_table, 40, 4).".".substr($ceRat_a_rates_table, 44, 4);
  155.                 $w_rate_b6 = substr($ceRat_a_rates_table, 112, 4).".".substr($ceRat_a_rates_table, 116, 4);
  156.                 $w_rate_a7 = substr($ceRat_a_rates_table, 48, 4).".".substr($ceRat_a_rates_table, 52, 4);
  157.                 $w_rate_b7 = substr($ceRat_a_rates_table, 120, 4).".".substr($ceRat_a_rates_table, 124, 4);
  158.                 $w_rate_a8 = substr($ceRat_a_rates_table, 56, 4).".".substr($ceRat_a_rates_table, 60, 4);
  159.                 $w_rate_b8 = substr($ceRat_a_rates_table, 128, 4).".".substr($ceRat_a_rates_table, 132, 4);
  160.                 $w_rate_a9 = substr($ceRat_a_rates_table, 64, 4).".".substr($ceRat_a_rates_table, 68, 4);
  161.                 $w_rate_b9 = substr($ceRat_a_rates_table, 136, 4).".".substr($ceRat_a_rates_table, 140, 4);
  162.                 $w_ba_area = substr($ceRat_a_rates_table, 210, 1);
  163.                 $w_sup_flat_yn = substr($ceRat_a_rates_table, 211, 1);
  164.                 $w_round_type = substr($ceRat_a_rates_table, 212, 1);
  165.             }
  166.         }
  167.  
  168.         if ($_SERVER['adminDbType'] == 'geronimo') {
  169.             if ($w_plan_ident == 'A' ||
  170.                 $w_plan_ident == 'B' ||
  171.                 $w_plan_ident == 'E') {
  172.                 $sql = "select min(age) ".
  173.                "from ratc ".
  174.                "where p_type = $w_plan_type ".
  175.                "and base_code = $w_plan_num ".
  176.                    "and code_num = '000' ".
  177.                    "and identifier = $w_plan_ident ".
  178.                "and room_board = $w_room_board ".
  179.                    "and assn = got_assn ".
  180.                "and (age > $w_age or age = $w_age) ".
  181.                "and effect_date = got_date}";
  182.             $result = odbc_exec($connect, $sql);
  183.             $got_age = odbc_result($result, "min(age)");
  184.                 odbc_free_result($result);
  185.             } elseif ($w_plan_ident == '1' ||
  186.                       $w_plan_ident == '2' ||
  187.                       $w_plan_ident == '5') {
  188.                 $sql = "select age ".
  189.                        "from ratc ".
  190.                    "where p_type = $w_plan_type ".
  191.                "and base_code = $w_plan_num ".
  192.                "and code_num = '000' ".
  193.                "and identifier = $w_plan_ident ".
  194.                "and room_board = $w_room_board ".
  195.                "and assn = got_assn ".
  196.                "and age = $w_age ".
  197.                "and effect_date = got_date";
  198.                 $result = odbc_exec($connect, $sql);
  199.                 $got_xage = odbc_result($result, "age");
  200.                   $got_age = $got_xage;
  201.                   odbc_free_result($result);
  202.             }
  203.         }
  204.  
  205.         if ($message_code == '00') {
  206.             if ($_SERVER['adminDbType'] == 'geronimo') {
  207.                 $sql = "select p_type, ".
  208.             "rate_a1, rate_b1, rate_a2, rate_b2, ".
  209.             "rate_a3, rate_b3, rate_a4, rate_b4, ".
  210.             "rate_a5, rate_b5, rate_a6, rate_b6, ".
  211.             "rate_a7, rate_b7, rate_a8, rate_b8, ".
  212.             "rate_a9, rate_b9, rate_a10, rate_b10, ".
  213.             "rate_a11, rate_b11, rate_a12, rate_b12, ".
  214.             "ba_area, sup_flat_yn, round ".
  215.             "from ratc ".
  216.          "where p_type = $w_plan_type ".
  217.         "and base_code = $w_plan_num ".
  218.         "and code_num = '000' ".
  219.         "and identifier = $w_plan_ident ".
  220.         "and age = got_age ".
  221.         "and room_board = $w_room_board ".
  222.         "and effect_date = got_date ".
  223.         "and assn = got_assn";
  224.         $result = odbc_exec($connect, $sql);
  225.             $w_p_type = odbc_result($result, "w_p_type");
  226.         $w_rate_a1 = odbc_result($result, "w_rate_a1");
  227.         $w_rate_b1 = odbc_result($result, "w_rate_b1");
  228.         $w_rate_a2 = odbc_result($result, "w_rate_a2");
  229.         $w_rate_b2 = odbc_result($result, "w_rate_b2");
  230.         $w_rate_a3 = odbc_result($result, "w_rate_a3");
  231.         $w_rate_b3 = odbc_result($result, "w_rate_b3");
  232.         $w_rate_a4 = odbc_result($result, "w_rate_a4");
  233.         $w_rate_b4 = odbc_result($result, "w_rate_b4");
  234.         $w_rate_a5 = odbc_result($result, "w_rate_a5");
  235.         $w_rate_b5 = odbc_result($result, "w_rate_b5");
  236.         $w_rate_a6 = odbc_result($result, "w_rate_a6");
  237.         $w_rate_b6 = odbc_result($result, "w_rate_b6");
  238.         $w_rate_a7 = odbc_result($result, "w_rate_a7");
  239.         $w_rate_b7 = odbc_result($result, "w_rate_b7");
  240.         $w_rate_a8 = odbc_result($result, "w_rate_a8");
  241.         $w_rate_b8 = odbc_result($result, "w_rate_b8");
  242.         $w_rate_a9 = odbc_result($result, "w_rate_a9");
  243.         $w_rate_b9 = odbc_result($result, "w_rate_b9");
  244.         $w_rate_a10 = odbc_result($result, "w_rate_a10");
  245.         $w_rate_b10 = odbc_result($result, "w_rate_b10");
  246.         $w_rate_a11 = odbc_result($result, "w_rate_a11");
  247.         $w_rate_b11 = odbc_result($result, "w_rate_b11");
  248.         $w_rate_a12 = odbc_result($result, "w_rate_a12");
  249.         $w_rate_b12 = odbc_result($result, "w_rate_b12");
  250.         $w_ba_area = odbc_result($result, "w_ba_area");
  251.         $w_sup_flat_yn = odbc_result($result, "w_sup_flat_yn");
  252.         $w_round_type = odbc_result($result, "w_round_type");
  253.         odbc_free_result($result);
  254.             }
  255.         if (!$w_p_type) {
  256.         $vMessageCode = '66';
  257.         $msg = new GetMessage($vMessageCode, 
  258.                                                                       $message_out);
  259.         return;
  260.         } else {
  261.         if ($w_coverage_code == '2') {
  262.         $w_rate_a1 = $w_rate_a2;
  263.         $w_rate_b1 = $w_rate_b2;
  264.         if ($w_sex == 'M') {
  265.         $work_prem = $w_rate_a1;
  266.         } elseif ($w_sex == 'F') {
  267.         $work_prem = $w_rate_b1;
  268.         }
  269.         } elseif ($w_coverage_code == '3') {
  270.         $w_rate_a1 = $w_rate_a3;
  271.         $w_rate_b1 = $w_rate_b3;
  272.         if ($w_sex == 'M') {
  273.         $work_prem = $w_rate_a1;
  274.         } elseif ($w_sex == 'F') {
  275.         $work_prem = $w_rate_b1;
  276.         }
  277.         } elseif ($w_coverage_code == '4') {
  278.         $w_rate_a1 = $w_rate_a4;
  279.         $w_rate_b1 = $w_rate_b4;
  280.         if ($w_sex == 'M') {
  281.         $work_prem = $w_rate_a1;
  282.         } elseif ($w_sex == 'F') {
  283.         $work_prem = $w_rate_b1;
  284.         }
  285.         } elseif ($w_coverage_code == '5') {
  286.         $w_rate_a1 = $w_rate_a5;
  287.         $w_rate_b1 = $w_rate_b5;
  288.         if ($w_sex == 'M') {
  289.         $work_prem = $w_rate_a1;
  290.         } elseif ($w_sex == 'F') {
  291.         $work_prem = $w_rate_b1;
  292.                     }
  293.                 }
  294.             }
  295.         }
  296.  
  297.     if ($message_code == '00') {
  298.     $aft_sw = 'A';
  299.             $aftRec = new GetAftRate($w_plan_type, $w_plan_num,
  300.          $w_aft_number, &$aft_sw,
  301.          &$a_rate, &$message_out);
  302.         $aft_rate = $a_rate;
  303.         $aft_sw = 'D';
  304.         $aftRec = new GetAftRate($w_plan_type, $w_plan_num,
  305.          $w_aft_number, &$aft_sw,
  306.          &$a_rate, &$message_out);
  307.         $aftdep_rate = $a_rate;
  308.         }
  309.         if ($message_code == '00') {
  310.             $aftemp_rate = $aftdep_rate;
  311.             //Add on Supplemental Flat Rate
  312.             $ratec1ba = new RateCalcC1Ba($w_plan_ident, $w_sex, $hold_cov_rating,
  313. $w_rate_a1, $w_rate_b1, $w_rate_a7, $w_rate_b7,
  314. $w_ba_area, $w_sup_flat_yn, $w_round_type,
  315. $aft_rate, $aftemp_rate, &$work_prem);
  316. $temp_work_prem = $work_prem;
  317. //Rated by Child
  318. if ($gp_use_oldest == 'B' &&
  319. $gp_rated_by_child == 'Y' &&
  320. $w_children > 0) {
  321.     if ($w_coverage_code == '2') {
  322.             $t_rate1 = $w_rate_a2;
  323.             $t_rate2 = $w_rate_b2;
  324.             $t_rate3 = $w_rate_a8;
  325.             $t_rate4 = $w_rate_b8;
  326.             } elseif ($w_coverage_code == '3') {
  327.             $t_rate1 = $w_rate_a3;
  328.             $t_rate2 = $w_rate_b3;
  329.             $t_rate3 = $w_rate_a9;
  330.             $t_rate4 = $w_rate_b9;
  331.             } elseif ($w_coverage_code == '4') {
  332.                 $t_rate1 = $w_rate_a4;
  333.                 $t_rate2 = $w_rate_b4;
  334.                 $t_rate3 = $w_rate_a10;
  335.                 $t_rate4 = $w_rate_b10;
  336.             } elseif ($w_coverage_code == '5') {
  337.                 $t_rate1 = $w_rate_a5;
  338.                 $t_rate2 = $w_rate_b5;
  339.                 $t_rate3 = $w_rate_a11;
  340.                 $t_rate4 = $w_rate_b11;
  341.                 } else {
  342.                 $t_rate1 = 0;
  343.                 $t_rate2 = 0;
  344.                 }
  345. $ratec1ba = new RateCalcC1Ba($w_plan_ident, $w_sex, $hold_cov_rating,
  346. $w_rate_a1, $w_rate_b1, $w_rate_a7, $w_rate_b7,$w_ba_area, $w_sup_flat_yn, $w_round_type, $aft_rate, $aftemp_rate, &$work_prem);
  347. $temp_work_prem = $work_prem;
  348. $child_work_prem = $work_prem;
  349.  
  350. if ($w_rating_sw == 7) {
  351. $w_rating_sw    = 3;
  352. $rate_exit        = 'Y';
  353. } elseif ($w_rating_sw == 4 || $w_pro_sw == 'Y') {
  354. $w_rating_sw    = 3;
  355. $rate_exit        = 'Y';
  356. } elseif ($prem2_out == 0 &&
  357.  $w_effect_date < $cov_prem2_date) {
  358. $w_which_pass    = '2';
  359. $w_use_prem2_sw    = 'Y';
  360.                 }
  361.             }
  362.         }
  363.  
  364. if ($w_rating_sw == 3)
  365. $age_band = $got_age;
  366. $w_age = $hold_age;
  367. $w_sex = $hold_sex;
  368. }//end constructor
  369. }//end class
  370. ?>
May 19 '09 #1
2 1339
Ewww... use the CODE tags next time, please.
Start with a blank script and then copy-paste parts of your code until you find the culprit. It doesn't take too much effort to do it.
May 20 '09 #2
hoopy
88
Not a trailing space after the close of PHP in fcnlib/application.inc.php is there? If line 284 is right at the end by the ?> make sure there are no spaces after it.
May 20 '09 #3

Sign in to post your reply or Sign up for a free account.

Similar topics

38
by: Kevin Smith | last post by:
For what it's worth, I wrote the original PEP 318. I probably wasn't qualified, but I just wanted a nice simple way to declare class methods without having to repeat the function name. After...
99
by: Jim Hubbard | last post by:
It seems that Microsoft not only does not need the classic Visual Basic developer army (the largest army of developers the world has ever seen), but now they don't need ANY Windows developer at a...
16
by: John Rivers | last post by:
http://www.15seconds.com/Issue/030812.htm?voteresult=1 poor guy worked his heart out, just to make a page control and then they published it ha ha ha ha ha to "help" others
5
by: Supra | last post by:
i just added "is nothing" to get rid or error that i posted below. but it is not displaying in richtextbox. all i seeing is debug window. Dim nrtb As New RichTextBox Sub DisplayMessage(ByVal rtb...
1
by: Daniel | last post by:
what permissions does a windows service need to execute another process? System.Diagnostics.Process process = System.Diagnostics.Process.Start(info); just local administrator? any specific...
4
by: Lance | last post by:
Hi all, I'm curious as to the technicalities of why a particular method declaring and calling is faster than the other. The C syntax is: \\\\\ BOOL PathMatchSpec( LPCSTR pszFile, LPCSTR...
2
by: Jan Althaus | last post by:
Mostly for testing reasons I'd like to see if it makes sense to chose the following approach for just-in-time compilation of shaders for a renderer: Seeing as the shaders themsefs consist mostly...
14
by: spamtrap | last post by:
Mostly for testing reasons I'd like to see if it makes sense to chose the following approach for just-in-time compilation of shaders for a renderer: Seeing as the shaders themsefs consist mostly...
13
by: Wiseman | last post by:
I'm kind of disappointed with the re regular expressions module. In particular, the lack of support for recursion ( (?R) or (?n) ) is a major drawback to me. There are so many great things that can...
0
by: kannu.valli3 | last post by:
Enjoy seeing with new video pictures http://nagaaraja.blogspots.com\
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.