• Hello community!

    I am having an issue with my php form code. It adds the same row twice within my MySQL database. Anybody know what is wrong with the code?

    add_shortcode('map_location_report','map_location_report_form');
    
    	function map_location_report_form()
    	{
      		global $wpdb;
    
    	  	$this_page  =  	$_SERVER['REQUEST_URI'];
    	  	$page     	=   $_POST['page'];
    
    		if ( $page == NULL )
    		{
    			echo '<form method="post" action="' . $this_page .'">
    
    				  	<div class="formfield-report" id="formfield-report-firstname">
    					  	<label for="first_name" id="first_name">Navn: </label>
    						<input type="text" name="first_name" id="first_name" />
    					</div>
    
    					<div class="formfield-report" id="formfield-report-lastname">
    						<label for="last_name" id="last_name">Efternavn: </label>
    						<input type="text" name="last_name" id="last_name" />
    					</div>
    
    					<div class="formfield-report" id="formfield-report-locationtype">
    					  	<label for="report_type " id="report_type ">Rapport type: </label>
    				  		<select name="report_type " />
    							<option value="sigtmelding" selected>Sigtmelding</option>
    							<option value="fangstrapport">Fangstrapport</option>
    							<option value="jagtomraade">Jagtområde</option>
    						</select>
    					</div>
    
    					<div class="formfield-report" id="formfield-report-latitude">
    						<label for="location_latitude" id="location_latitude">Breddegrad: </label>
    						<input type="text" name="location_latitude" id="location_latitude" />
    					</div>
    
    					<div class="formfield-report" id="formfield-report-longitude">
    				  		<label for="location_longitude" id="location_longitude">Længdegrad: </label>
    				  		<input type="text" name="location_longitude" id="location_longitude" />
    			  		</div>
    
    					<input type="hidden" value="1" name="page" />
    
    					<div id="formfield-report-button">
    						<input class="btn btn-default submit-form-button" type="Submit" />
    					</div>
    
    		  	</form>';
    	  	}
    		elseif ( $page == 1 )
    		{
    		  	$first_name   			=   $_POST['first_name'];
    	  		$last_name    			=   $_POST['last_name'];
    		  	$report_type 			=	$_POST['report_type '];
    		  	$location_latitude		=	$_POST['location_latitude'];
    			$location_longitude		=	$_POST['location_longitude'];		
    
    	  		$page_one_table = 'maplocationreports';
    
    	  		$page_one_inputs =  array
    	  		(
    		  		'first_name' 			=> $first_name,
    		  		'last_name' 			=> $last_name,
    	  			'report_type '			=> $report_type ,
    	  			'location_latitude'		=> $location_latitude,
    				'location_longitude'	=> $location_longitude,
    	  			'page' 					=> $page
    		  	);
    
    	  		$insert_page_one = $wpdb->insert($page_one_table, $page_one_inputs);
    
    			echo '<h3>Mange tak for dit bidrag!</h3>';
    			echo '<p>Der er sat stor pris på at du har taget dig tid til at registrere et punkt på kortet!</p>';
    
    		}
      	};

    CREATE TABLEmaplocationreports` (
    id INT( 7 ) NOT NULL AUTO_INCREMENT,
    first_name VARCHAR( 50 ) NOT NULL,
    last_name VARCHAR( 50 ) NOT NULL,
    report_type VARCHAR( 20 ) NOT NULL,
    location_latitude VARCHAR( 12 ) NOT NULL,
    location_longitude VARCHAR( 12 ) NOT NULL,
    page INT( 1 ) NOT NULL,
    timestamp TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY ( id )
    )`

    Thanks in advance!

The topic ‘Duplication – php code duplicates row in MySQL – What is wrong?’ is closed to new replies.