TaosBill Posted May 27, 2008 Share Posted May 27, 2008 <? $headers = 'company_id,emp_id,approver_login,approver_passwrd,approver_email,hrmanager_emp_id,ssn,hire_date,perf_rating_date,emp_status,hourly_rate,incentive_pay,locn1,salary_eff_date'; $upd_columns = explode(",", $headers); $comma = ''; foreach($upd_columns as $val) { if ( ($val == 'company_id') OR ($val == 'emp_id')){ // no update on the primary keys }else { $sql .= $comma . $val . " = '" . ${$val} . "'"; $comma = ','; } } echo $sql."<br>"; ?> Displays this: approver_login = ''...removed to save space..,locn1 = '',salary_eff_date = '' ${$val} didn't work Can someone tell me why? Thanks Link to comment https://forums.phpfreaks.com/topic/107468-var-help/ Share on other sites More sharing options...
trq Posted May 27, 2008 Share Posted May 27, 2008 A better option... foreach($upd_columns as $k => $v) { if (($k == 'company_id') OR ($k == 'emp_id')) { // no update on the primary keys }else { $sql .= $comma . $k . " = '" . $v . "'"; $comma = ','; } } Link to comment https://forums.phpfreaks.com/topic/107468-var-help/#findComment-550845 Share on other sites More sharing options...
sasa Posted May 27, 2008 Share Posted May 27, 2008 <?php $vals = array('sasa', 'xxx'); $sasa = 'OK'; $xxx = 'ups'; foreach ($vals as $val) echo $val, ' --> ',$$val,"<br />\n"; ?> output sasa --> OK<br /> xxx --> ups<br /> Link to comment https://forums.phpfreaks.com/topic/107468-var-help/#findComment-550852 Share on other sites More sharing options...
PFMaBiSmAd Posted May 27, 2008 Share Posted May 27, 2008 Edit: Pretty much what sasa posted. For the first code to work, there would need to be variables named $company_id, $emp_id, $approver_login ... $salary_eff_date with values in them. If you turn on full php error reporting, you will get notice error messages if those variables don't exist. Link to comment https://forums.phpfreaks.com/topic/107468-var-help/#findComment-550857 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.