Darkmatter5 Posted April 25, 2008 Share Posted April 25, 2008 I have 3 variables: $FirstName=$_POST['FirstName']; $LastName=$_POST['LastName']; $CompanyName=$_POST['CompanyName']; I need some logic to say concatenate FirstName, LastName and CompanyName if all are NOT NULL, if one is NULL don't include the variable in the concatenation. Example: FirstName=John LastName=Doe CompanyName=NULL $fields=$FirstName, $LastName $values=FirstName, LastName I want these variables to be used for inserting data into a table, but only the data that is NOT NULL. Any ideas? Link to comment https://forums.phpfreaks.com/topic/102955-concatenating-3-variables/ Share on other sites More sharing options...
wildteen88 Posted April 25, 2008 Share Posted April 25, 2008 Fairly Simple: $fullString = null; if(isset($_POST['Firstname']) && !empty($_POST['Firstname'])) { $fullString .= $_POST['Firstname'] . ' '; } if(isset($_POST['Lastname']) && !empty($_POST['Lastname'])) { $fullString .= $_POST['Lastname'] . ' '; } if(isset($_POST['CompanyName']) && !empty($_POST['CompanyName'])) { $fullString .= $_POST['CompanyName']; } echo $fullString; Link to comment https://forums.phpfreaks.com/topic/102955-concatenating-3-variables/#findComment-527419 Share on other sites More sharing options...
moselkady Posted April 25, 2008 Share Posted April 25, 2008 You can try something like this: foreach (array('Firstname','LastName','CompanyName') as $field) { if ($_POST[$field]) { $field_name[] = $field; $field_value[] = "'{$_POST[$field]}'"; } } $fields = join(",", $field_name); $values = join(",", $field_value); $sql = "INSERT INTO table_name ($fields) VALUES($values)"; Link to comment https://forums.phpfreaks.com/topic/102955-concatenating-3-variables/#findComment-527433 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.