Why Experts Exchange?

Experts Exchange always has the answer, or at the least points me in the correct direction! It is like having another employee that is extremely experienced.

Jim Murphy
Programmer at Smart IT Solutions

When asked, what has been your best career decision?

Deciding to stick with EE.

Mohamed Asif
Technical Department Head

Being involved with EE helped me to grow personally and professionally.

Carl Webster
CTP, Sr Infrastructure Consultant
Ask ANY Question

Connect with Certified Experts to gain insight and support on specific technology challenges including:

Troubleshooting
Research
Professional Opinions
Ask a Question
Did You Know?

We've partnered with two important charities to provide clean water and computer science education to those who need it most. READ MORE

troubleshooting Question

Amending php script ("all" fields to "no" fields required) 500 points

Avatar of rincewind666
rincewind666 asked on
PHP
4 Comments1 Solution395 ViewsLast Modified:
I have a php script where ALL fields are required.  I want to have it where NO fields are required.

I am giving the maximum 500 points in addition to my grateful thanks.
<?php
require_once( 'common.php' );
require_once( 'check-login.php' );
 
 
	# initialize the error fields
	$errfields = array(  );
if( isset( $_POST['submit'] ) ){ # checks if the user clicked the submit button
 
	# start of form validation
	$errors = array(); 
 
	if( $_POST['name'] == '' ){
		$errors[] = '&bull; Please Enter Name';
		$errfields[] = 'name';
	}
		
	if( $_POST['email'] == '' ){
		$errors[] = '&bull; Please Enter Email';	
		$errfields[] = 'email';							
	}
	if( $_POST['email'] != $_POST['reemail'] ){
		$errors[] = '&bull; Wrong Confirm Email';
		$errfields[] = 'email';
	}
	if( !validEmail( $_POST['email'] ) ){
		$errors[] = '&bull; Please Enter A Valid Email';
		$errfields[] = 'email';	
	}
		
	if( $_POST['nname'] == '' ){
		$errors[] = '&bull; Please Enter Name for Nomination';
		$errfields[] = 'nname';		
	}
	
	if( $_POST['country'] == '' ){
		$errors[] = '&bull; Please Select Country';	
		$errfields[] = 'country';			
	}
	
	if( $_POST['state'] == '' ){
		$errors[] = '&bull; Please Select State';
		$errfields[] = 'state';		
	}
	
	if( $_POST['color'] == '' ){
		$errors[] = '&bull; Please Select Color';
		$errfields[] = 'color';		
	}
	
	if( $_POST['keywords'] == '' ){
		$errors[] = '&bull; Please Enter Keywords';
		$errfields[] = 'keywords';		
	}
	
	if( $_POST['link'] == '' ){
		$errors[] = '&bull; Please Enter Link';
		$errfields[] = 'link';		
	}
	if( strstr( $_POST['link'], 'http://' ) == false ){
		$errors[] = '&bull; You need to enter your link as shown in the example';
		$errfields[] = 'link';		
	}	
	
	if( $_POST['description'] == '' ){
		$errors[] = '&bull; Please Enter Description';
		$errfields[] = 'description';		
	}
	
	if( strip_tags( trim( $_POST['html'] ) ) == '' ){
		$errors[] = '&bull; Please Enter HTML Code';
		$errfields[] = 'html';		
	}
	
	if( $_POST['conduct'] == '' ){
		$errors[] = '&bull; Please Select Conduct';
		$errfields[] = 'conduct';		
	}
	
	if( $_POST['options'] == '' ){
		$errors[] = '&bull; Please Select Options';
		$errfields[] = 'options';		
	}
	
	if( !is_uploaded_file( $_FILES['image']['tmp_name'] ) && $_POST['id'] == 0 ){
		$errors[] = '&bull; Please Upload Image';
		$errfields[] = 'image';		
	}
	
	if( !is_uploaded_file( $_FILES['zip']['tmp_name'] ) && $_POST['id'] == 0 ){
		$errors[] = '&bull; Please Upload Zip file';
		$errfields[] = 'zip';		
	}	
	
	# end of form validation
	
		
	if( count( $errors ) ){ # checks if there are errors in validation
	
		# display message to reupload the image file
		if( !in_array( 'image', $errfields ) ){
			$errors[] = '&bull; Due to the errors above, the uploaded image is not retained in the upload field, kindly reupload it again';
			$errfields[] = 'image';
		}
		
		# display message to reupload the zip file
		if( !in_array( 'zip', $errfields ) ){		
			$errors[] = '&bull; Due to the errors above, the uploaded zip file is not retained, kindly reupload it again';
			$errfields[] = 'zip';	
		}
		
		# set the validation error message
		$msg = implode( '<br />', $errors );
		$msgclass = 'errmsg';
	}
	else{ # if there is no error in validation code goes here
		
		# upload image and set the sql paramters
		if( is_uploaded_file( $_FILES['image']['tmp_name'] ) ){
			$ext = explode( '.', $_FILES['image']['name'] );
			$imgExt = $ext[ count( $ext )- 1];
			$imgName = md5( $_SERVER['REMOTE_ADDR'].time() ).'.'.$imgExt;
			move_uploaded_file( $_FILES['image']['tmp_name'], $settings['image_folder'].'/'.$imgName );
			$imgSQL = ",
					  image = '".$imgName."',
					  image_name = '".$_FILES['image']['name']."'";
		}
		
		# upload zip file and set the sql paramters
		if( is_uploaded_file( $_FILES['zip']['tmp_name'] ) ){		
			$ext = explode( '.', $_FILES['zip']['name'] );
			$zipExt = $ext[ count( $ext )- 1];
			$zipName = md5( $_SERVER['REMOTE_ADDR'].time() ).'.'.$zipExt;
			move_uploaded_file( $_FILES['zip']['tmp_name'], $settings['zip_folder'].'/'.$zipName );	
			$zipSQL = ",
					  zip = '".$zipName."',
					  zip_name = '".$_FILES['zip']['name']."'";			
		}
		
	
		//foreach( $_POST as $key=>$val )
			//$_POST[$key] = addslashes( trim( $val ) );
			
		
		if( $_POST['id'] == 0 ){ # checks if this is a new nomination
		
			# add nomination in database
			$query = "INSERT INTO nominations SET
					  name = '".$_POST['name']."',
					  email = '".$_POST['email']."',
					  nname = '".$_POST['nname']."',
					  country = '".$_POST['country']."',
					  state = '".$_POST['state']."',
					  color = '".$_POST['color']."',
					  keywords = '".$_POST['keywords']."',
					  link = '".$_POST['link']."',
					  description = '".$_POST['description']."',
					  html = '".$_POST['html']."',
					  conduct = '".$_POST['conduct']."',
					  options = '".$_POST['options']."',
					  image = '".$imgName."',
					  image_name = '".$_FILES['image']['name']."',
					  zip = '".$zipName."',
					  zip_name = '".$_FILES['zip']['name']."',
					  date = '".date( 'Y-m-d H:i:s' )."',
					  user_id = ".$_SESSION['userid'];
		}
		else{
			# edit the selected nomination
			$query = "UPDATE nominations SET
					  name = '".$_POST['name']."',
					  email = '".$_POST['email']."',
					  nname = '".$_POST['nname']."',
					  country = '".$_POST['country']."',
					  state = '".$_POST['state']."',
					  color = '".$_POST['color']."',
					  keywords = '".$_POST['keywords']."',
					  link = '".$_POST['link']."',
					  description = '".$_POST['description']."',
					  html = '".$_POST['html']."',
					  conduct = '".$_POST['conduct']."',
					  options = '".$_POST['options']."'
					  ".$imgSQL."
					  ".$zipSQL."
					  WHERE id = ".$_POST['id'];
			$editmode = 1;	
		}
		mysql_query( $query );
		
		
		if( $editmode ){ # check if this is an edit and set the success message
			$msg = 'Successfully Updated the item';
			$msgclass = 'msg';
		}
		else{
			# send confirmation email if this is a new nomination
			require_once('PHPMailer_v2.0.3/class.phpmailer.php');
			
			$mail = new PHPMailer(); 
			$body = $mail->getFile('nomination-confirmation-email.txt');
			
			foreach( $_POST as $key=>$val )
				$body = str_replace( '<'.$key.'>',$val, $body );
			
			$mail->From = $settings['from_email'];
			$mail->FromName = $settings['from_name'];
			
			$mail->Subject = $settings['nomination_subject'];
			$mail->AltBody = strip_tags( $body );
			
			$mail->MsgHTML( $body );
			$mail->AddAddress( $_POST['email'], $_POST['name'] );
			
			if( $settings['send_confirmation_to_admin'] )
				$mail->AddBCC( $settings['to_email'] , $settings['to_name']  );
			
			
			//$mail->AddAttachment("images/phpmailer.gif");
			
			$mail->Send();
			
			# redirect to success page
			header( 'Location: nomination-success.php' );
		}
	}		
}
 
if( isset( $_GET['e'] ) ){ # checks if script is in edit mode
 
	# get the selected nomination to edit
	$query = "SELECT *
			  FROM nominations
			  WHERE id = ".intval( $_GET['e'] );
	$result = mysql_query( $query );
	$row = mysql_fetch_assoc( $result );
	
	# load data to the post variables 
	foreach( $row as $key=>$val )
		$_POST[$key] = $val;
		
	$_POST['reemail'] = $row['email'];
	$_POST['image_path'] = $row['image'];
	$_POST['zip_path'] = $row['zip'];	
}
 
include('header.php');
?>
<form method="post" action="nomination.php" enctype="multipart/form-data">
<input name="id" type="hidden" value="<?=intval( $_POST['id'] )?>" />
<p class="<?=$msgclass?>"><?=$msg?></p>
<h3>your details</h3>
<!-- Your Name Field -->
<p class="<?=in_array( 'name', $errfields ) ? 'errorfield' : ''?>" >
	Your Name: <br />
	<input name="name" type="text" value="<?=$_POST['name']?>">
</p>
 
<!-- Email and Confirm Field -->
<p class="<?=in_array( 'email', $errfields ) ? 'errorfield' : ''?>">
	Your Email: <br />
	<input name="email" type="text" value="<?=$_POST['email']?>"><br />
	Confirm Your Email: <br />
	<input name="reemail" type="text" value="<?=$_POST['reemail']?>">	
</p>
 
<h3>Nomination:</h3>
 
<!-- Name Field -->
<p class="<?=in_array( 'nname', $errfields ) ? 'errorfield' : ''?>">
	Name: <br />
	<input name="nname" type="text" value="<?=$_POST['nname']?>">
</p>
 
<!-- Country Field -->
<p class="<?=in_array( 'country', $errfields ) ? 'errorfield' : ''?>">
	Country: <br />
<select name="country" id="country">
<option value="">--- Select ---</option>
<option>Afghanistan</option><option>&Aring;land Islands</option><option>Albania</option><option>Algeria</option><option>American Samoa</option><option>Andorra</option><option>Angola</option><option>Anguilla</option><option>Antarctica</option><option>Antigua and Barbuda</option><option>Argentina</option><option>Armenia</option><option>Aruba</option><option >Australia</option><option>Austria</option><option>Azerbaijan</option><option>Bahamas</option><option>Bahrain</option><option>Bangladesh</option><option>Barbados</option><option>Belarus</option><option>Belgium</option><option>Belize</option><option>Benin</option><option>Bermuda</option><option>Bhutan</option><option>Bolivia</option><option>Bosnia and Herzegovina</option><option>Botswana</option><option>Bouvet Island</option><option>Brazil</option><option>British Indian Ocean territory</option><option>Brunei Darussalam</option><option>Bulgaria</option><option>Burkina Faso</option><option>Burundi</option><option>Cambodia</option><option>Cameroon</option><option>Canada</option><option>Cape Verde</option><option>Cayman Islands</option><option>Central African Republic</option><option>Chad</option><option>Chile</option><option>China</option><option>Christmas Island</option><option>Cocos (Keeling) Islands</option><option>Colombia</option><option>Comoros</option><option>Congo</option><option>Congo, Democratic Republic</option><option>Cook Islands</option><option>Costa Rica</option><option>C&ocirc;te d'Ivoire (Ivory Coast)</option><option>Croatia (Hrvatska)</option><option>Cuba</option><option>Cyprus</option><option>Czech Republic</option><option>Denmark</option><option>Djibouti</option><option>Dominica</option><option>Dominican Republic</option><option>East Timor</option><option>Ecuador</option><option>Egypt</option><option>El Salvador</option><option>Equatorial Guinea</option><option>Eritrea</option><option>Estonia</option><option>Ethiopia</option><option>Falkland Islands</option><option>Faroe Islands</option><option>Fiji</option><option>Finland</option><option >France</option><option>French Guiana</option><option>French Polynesia</option><option>French Southern Territories</option><option>Gabon</option><option>Gambia</option><option>Georgia</option><option >Germany</option><option>Ghana</option><option>Gibraltar</option><option>Greece</option><option>Greenland</option><option>Grenada</option><option>Guadeloupe</option><option>Guam</option><option>Guatemala</option><option>Guinea</option><option>Guinea-Bissau</option><option>Guyana</option><option>Haiti</option><option>Heard and McDonald Islands</option><option>Honduras</option><option>Hong Kong</option><option>Hungary</option><option>Iceland</option><option>India</option><option>Indonesia</option><!-- copyright Felgall Pty Ltd --><option>Iran</option><option>Iraq</option><option>Ireland</option><option>Israel</option><option>Italy</option><option>Jamaica</option><option>Japan</option><option>Jordan</option><option>Kazakhstan</option><option>Kenya</option><option>Kiribati</option><option>Korea (north)</option><option>Korea (south)</option><option>Kuwait</option><option>Kyrgyzstan</option><option>Lao People's Democratic Republic</option><option>Latvia</option><option>Lebanon</option><option>Lesotho</option><option>Liberia</option><option>Libyan Arab Jamahiriya</option><option>Liechtenstein</option><option>Lithuania</option><option>Luxembourg</option><option>Macao</option><option>Macedonia, Former Yugoslav Republic Of</option><option>Madagascar</option><option>Malawi</option><option>Malaysia</option><option>Maldives</option><option>Mali</option><option>Malta</option><option>Marshall Islands</option><option>Martinique</option><option>Mauritania</option><option>Mauritius</option><option>Mayotte</option><option>Mexico</option><option>Micronesia</option><option>Moldova</option><option>Monaco</option><option>Mongolia</option>Montenegro<option></option><option>Montserrat</option><option>Morocco</option><option>Mozambique</option><option>Myanmar</option><option>Namibia</option><option>Nauru</option><option>Nepal</option><option>Netherlands</option><option>Netherlands Antilles</option><option>New Caledonia</option><option >New Zealand</option><option>Nicaragua</option><option>Niger</option><option>Nigeria</option><option>Niue</option><option>Norfolk Island</option><option>Northern Mariana Islands</option><option>Norway</option><option>Oman</option><option>Pakistan</option><option>Palau</option><option>Palestinian Territories</option><option>Panama</option><option>Papua New Guinea</option><option>Paraguay</option><option>Peru</option><option>Philippines</option><option>Pitcairn</option><option>Poland</option><option>Portugal</option><option>Puerto Rico</option><option>Qatar</option><option>R&eacute;union</option><option>Romania</option><option>Russian Federation</option><option>Rwanda</option><option>Saint Helena</option><option>Saint Kitts and Nevis</option><option>Saint Lucia</option><option>Saint Pierre and Miquelon</option><option>Saint Vincent and the Grenadines</option><option>Samoa</option><option>San Marino</option><option>Sao Tome and Principe</option><option>Saudi Arabia</option><option>Senegal</option><option>Serbia</option><option>Seychelles</option><option>Sierra Leone</option><option>Singapore</option><option>Slovakia</option><option>Slovenia</option><option>Solomon Islands</option><option>Somalia</option><option>South Africa</option><option>South Georgia and the South Sandwich Islands</option><option>Spain</option><option>Sri Lanka</option><option>Sudan</option><option>Suriname</option><option>Svalbard and Jan Mayen Islands</option><option>Swaziland</option><option>Sweden</option><option>Switzerland</option><option>Syria</option><option>Taiwan</option><option>Tajikistan</option><option>Tanzania</option><option>Thailand</option><option>Togo</option><option>Tokelau</option><option>Tonga</option><option>Trinidad and Tobago</option><option>Tunisia</option><option>Turkey</option><option>Turkmenistan</option><option>Turks and Caicos Islands</option><option>Tuvalu</option><option>Uganda</option><option>Ukraine</option><option>United Arab Emirates</option><option >United Kingdom</option><option>United States of America</option><option>Uruguay</option><option>Uzbekistan</option><option>Vanuatu</option><option>Vatican City</option><option>Venezuela</option><option>Vietnam</option><option>Virgin Islands (British)</option><option>Virgin Islands (US)</option><option>Wallis and Futuna Islands</option><option>Western Sahara</option><option>Yemen</option><option>Zaire</option><option>Zambia</option><option>Zimbabwe</option></select>	
</p>
 
<!-- State Field -->
<p class="<?=in_array( 'state', $errfields ) ? 'errorfield' : ''?>">State: <br />
<select name="state" id="state">
	<option value="">--- Select ---</option>
	<option value="OTHER">None U.S. State</option>	
	<option value="AL">Alabama</option>
	<option value="AK">Alaska</option>
	<option value="AZ">Arizona</option>
	<option value="AR">Arkansas</option>
	<option value="CA">California</option>
	<option value="CO">Colorado</option>
	<option value="CT">Connecticut</option>
	<option value="DE">Delaware</option>
	<option value="DC">District of Columbia</option>
	<option value="FL">Florida</option>
	<option value="GA">Georgia</option>
	<option value="HI">Hawaii</option>
	<option value="ID">Idaho</option>
	<option value="IL">Illinois</option>
	<option value="IN">Indiana</option>
	<option value="IA">Iowa</option>
	<option value="KS">Kansas</option>
	<option value="KY">Kentucky</option>
	<option value="LA">Louisiana</option>
	<option value="ME">Maine</option>
	<option value="MD">Maryland</option>
	<option value="MA">Massachusetts</option>
	<option value="MI">Michigan</option>
	<option value="MN">Minnesota</option>
	<option value="MS">Mississippi</option>
	<option value="MO">Missouri</option>
	<option value="MT">Montana</option>
	<option value="NE">Nebraska</option>
	<option value="NV">Nevada</option>
	<option value="NH">New Hampshire</option>
	<option value="NJ">New Jersey</option>
	<option value="NM">New Mexico</option>
	<option value="NY">New York</option>
	<option value="NC">North Carolina</option>
	<option value="ND">North Dakota</option>
	<option value="OH">Ohio</option>
	<option value="OK">Oklahoma</option>
	<option value="OR">Oregon</option>
	<option value="PA">Pennsylvania</option>
	<option value="RI">Rhode Island</option>
	<option value="SC">South Carolina</option>
	<option value="SD">South Dakota</option>
	<option value="TN">Tennessee</option>
	<option value="TX">Texas</option>
	<option value="UT">Utah</option>
	<option value="VT">Vermont</option>
	<option value="VA">Virginia</option>
	<option value="WA">Washington</option>
	<option value="WV">West Virginia</option>
	<option value="WI">Wisconsin</option>
	<option value="WY">Wyoming</option>
</select>
</p>
 
<!-- Color Field -->
<p class="<?=in_array( 'color', $errfields ) ? 'errorfield' : ''?>">
	Color: <br />
	<select name="color" id="color">
		<option value="">--- Select ---</option>	
		<option value="blue" style="background-color:blue">Blue</option>
		<option style="background-color:green" value="green">Green</option>
		<option style="background-color:red" value="red">Red</option>
		<option style="background-color:yellow" value="yellow">Yellow</option>						
	</select>
</p>
 
<script type="text/javascript">
	// set the dropdown boxes values 
	document.getElementById( 'country' ).value = '<?=$_POST['country']?>';
	document.getElementById( 'state' ).value = '<?=$_POST['state']?>';
	document.getElementById( 'color' ).value = '<?=$_POST['color']?>';		
</script>
 
<!-- Keywords Field -->
<p class="<?=in_array( 'keywords', $errfields ) ? 'errorfield' : ''?>">
	Keywords: <br />
	<input name="keywords" type="text" value="<?=$_POST['keywords']?>">
</p>
 
<!-- Link Field -->
<p class="<?=in_array( 'link', $errfields ) ? 'errorfield' : ''?>">
	Link: <small>(example http://yourwebsite.com, http://www.sitename.com )</small><br />
	<input name="link" type="text" value="<?=$_POST['link']?>">
</p>
 
<!-- Description Field -->
<p class="<?=in_array( 'description', $errfields ) ? 'errorfield' : ''?>">
	Description: <br />
	<textarea name="description" cols="30" rows="5"><?=$_POST['description']?></textarea>
</p>
 
<!-- Load the fckeditor -->
<script type="text/javascript" src="fckeditor/fckeditor.js"></script>
<!-- HTML CODE field -->
<p class="<?=in_array( 'html', $errfields ) ? 'errorfield' : ''?>">
	HTML code: <br />
	<textarea name="html" id="html" cols="30" rows="5"><?=stripslashes( $_POST['html'] )?></textarea>
</p>
<script type="text/javascript">
	//apply fckeditor to the html code textarea
	var sBasePath = 'fckeditor/';
	var oFCKeditor = new FCKeditor( 'html' ) ;
	oFCKeditor.Width = 600;
	oFCKeditor.Height = 400;	
	oFCKeditor.BasePath	= sBasePath ;
	oFCKeditor.ReplaceTextarea() ;
</script>
<!-- Conduct field -->
<p class="<?=in_array( 'conduct', $errfields ) ? 'errorfield' : ''?>">
	Conduct: <br />
	<label><input name="conduct" type="radio" value="poor" <?=( $_POST['conduct'] == 'poor' ? 'checked="checked"' : '' )?>> Poor</label>
	<label><input name="conduct" type="radio" value="good" <?=( $_POST['conduct'] == 'good' ? 'checked="checked"' : '' )?>> Good</label>
	<label><input name="conduct" type="radio" value="excellent" <?=( $_POST['conduct'] == 'excellent' ? 'checked="checked"' : '' )?>> Excellent</label>		
</p>
 
<!-- Options field -->
<p class="<?=in_array( 'options', $errfields ) ? 'errorfield' : ''?>">
	Options: <br />
	<label><input name="options" type="radio" value="Option 1" <?=( $_POST['options'] == 'Option 1' ? 'checked="checked"' : '' )?> > Option 1</label>
	<label><input name="options" type="radio" value="Option 2" <?=( $_POST['options'] == 'Option 2' ? 'checked="checked"' : '' )?> > Option 2</label>
	<label><input name="options" type="radio" value="Option 3" <?=( $_POST['options'] == 'Option 3' ? 'checked="checked"' : '' )?>> Option 3</label>		
	<label><input name="options" type="radio" value="Option 4" <?=( $_POST['options'] == 'Option 4' ? 'checked="checked"' : '' )?>> Option 4</label>
	<label><input name="options" type="radio" value="Option 5" <?=( $_POST['options'] == 'Option 5' ? 'checked="checked"' : '' )?>> Option 5</label>			
</p>
 
<!--  Image field -->
<p class="<?=in_array( 'image', $errfields ) ? 'errorfield' : ''?>">
<?php
	if( $_POST['image_path'] != '' ){
	?>
	Current Image: <a href="<?=$settings['image_folder']?>/<?=$_POST['image_path']?>" target="_blank"><?=$_POST['image_name']?></a><br /> Replace
	<input name="image_path" type="hidden" value="<?=$_POST['image_path']?>" />
	<input name="image_name" type="hidden" value="<?=$_POST['image_name']?>" />
	<?php
	}
?>
	Image: <br />
	<input name="image" type="file">
</p>
 
<!--  Zip field -->
<p class="<?=in_array( 'zip', $errfields ) ? 'errorfield' : ''?>">
<?php
	if( $_POST['zip_path'] != '' ){
	?>
	Current Zip: <a href="<?=$settings['zip_folder']?>/<?=$_POST['zip_path']?>" target="_blank"><?=$_POST['zip_name']?></a><br /> Replace 
	<input name="zip_path" type="hidden" value="<?=$_POST['zip_path']?>" />
	<input name="zip_name" type="hidden" value="<?=$_POST['zip_name']?>" />
	<?php
	}
?>
	Zip file: <br />
	<input name="zip" type="file">
</p>
 
<!--  Download field -->
<p>
	Downloads: <br />
	<?php
	
	# retrieve files from download directory set in config.php
	$dirFiles = dirList( $settings['download_folder'] );
	foreach( $dirFiles as $dF ){
		$downloadLink = $settings['download_folder'].'/'.$dF;
	?>
		<a href="<?=$downloadLink?>"><?=$dF?></a><br />
	<?php
	}
	?>
</p>
 
<!-- Submit button -->
<p><input name="submit" value="Submit!" type="submit" /></p>
</form>
<?php 
include('footer.php');
?>
ASKER CERTIFIED SOLUTION
Avatar of James Looney
James LooneyFlag of United States of America imageSr. Programmer/Analyst

Our community of experts have been thoroughly vetted for their expertise and industry experience.

Commented:
This problem has been solved!
Unlock 1 Answer and 4 Comments.
See Answers