2 Submits in PHP form

Status
Niet open voor verdere reacties.

thapriest

Gebruiker
Lid geworden
28 okt 2009
Berichten
559
Goeiemiddag,

Ik heb de volgende code , en daar heb ik een upload voor foto's bij ingezet, die ik onderin include.
Nu wanneer ik op upload en/of opslaan druk voert hij de upload niet uit, maar slaat de reis op.

Hoe zorg ik ervoor dat de 2 submits aprt van elkaar uitgevoerd worden?

PHP:
case "2":
		if ($_GET['action'] == 1) {
			// Voeg Reis Toe aan Database
			$sql = "SELECT *  FROM `reizen_aanbod` ";
			$result = $modx->db->query($sql);
			$titel = mysql_result($result,$i,"titel");
			$prijs = mysql_result($result,$i,"prijs");
			$list = '<div class="content_">
					<p>'.$lang_config_header.'</p>
					<form action="index.php?a=112&id='.$modId.'&p=2&action=2" method="post"><b>';
			$list .= '<table style="margin-top:10px; font-size: 12px;">';
			$list .= '<tr><td><strong>'.$lang_config_true.'</strong></td><td>: <input type="text" size="100" maxlength="100" name="titel" value=""></input></td></tr>';
			$list .= '<tr><td><strong>'.$lang_config_false.'</strong></td><td>: <input type="text" size="100" maxlength="100" name="prijs" value=""></input></td></tr>';
						$list .= '<tr><td><strong>'.$lang_reis_sterren.'</strong></td><td>: <select name="sterren">';
						
		$sql = "SELECT * FROM `reizen_sterren` ";
        $result = mysql_query($sql);
         while($disp = mysql_fetch_array($result))
         {
              $list .= '<option value="'.$disp['sterren'].'">  '.$disp['sterren'].' </option>'; 
         }

			$list .= '</select></td></tr>';
			$list .= '<tr><td><strong>'.$lang_reis_foto.'</strong></td><td>: <input type="file" size="100" name="foto" value=""></input></td></tr>';
			$sql = "SELECT *  FROM `reizen_aanbod` ";
			$result = $modx->db->query($sql);
			$list .= '<tr><td><strong>'.$lang_config_senderemail.'</strong></td><td>: <textarea  name="tekst" value="'.mysql_result($result,$i,"tekst").'"></textarea></td></tr>';
		    
			/*echo($path.'photo.php');*/
			
			/*$list .= '<tr><td><strong>'.$lang_config_mail.'</strong></td><td>: <select name="titel">';

			if($mailmethod == 'IsMail'){$dropdown = ' selected="selected"';} else {$dropdown = '';}
			$list .= '<option value="IsMail"'.$dropdown.'>test1</option>';

			if($mailmethod == 'IsSMTP'){$dropdown = ' selected="selected"';} else {$dropdown = '';}
			$list .= '<option value="IsSMTP"'.$dropdown.'>test2</option>';

			if($mailmethod == 'IsSendmail'){$dropdown = ' selected="selected"';} else {$dropdown = '';}
			$list .= '<option value="IsSendmail"'.$dropdown.'>test3</option>';

			if($mailmethod == 'IsQmail'){$dropdown = ' selected="selected"';} else {$dropdown = '';}
			$list .= '<option value="IsQmail"'.$dropdown.'>test4</option>';
	
			$list .= '</select></td></tr>';
			$list .= '<tr><td>&nbsp;</td><td>&nbsp;&nbsp;'.$lang_config_mail_description.'</td></tr>';

			$list .= '<tr><td><strong>'.$lang_config_auth.'</strong></td><td>: <select name="auth">';

			if($auth == 'true'){$dropdown3 = ' selected="selected"';} else {$dropdown3 = '';}
			$list .= '<option value="true"'.$dropdown3.'>'.$lang_config_true.'</option>';

			if($auth == 'false'){$dropdown3 = ' selected="selected"';} else {$dropdown3 = '';}
			$list .= '<option value="false"'.$dropdown3.'>'.$lang_config_false.'</option>';
			
			$list .= '</select></td></tr>';*/
			$list .= '<tr><td>&nbsp;</td><td>&nbsp;&nbsp;'.$lang_config_auth_description.'</td></tr>';

		
			$list .= '<tr><td><strong>'.$lang_config_authpassword.'</strong></td><td>: <input type="text" name="aanbieding" value="'.mysql_result($result,$i,"aanbieding").'"></input></td></tr>';
			
// -------------------------------------------------		
				$list .= '<tr><td><strong>'.$lang_reis_soort.'</strong></td><td>: <select name="soort">';
		$sql = "SELECT * FROM `reizen_soort` ";
        $result = mysql_query($sql);
         while($disp = mysql_fetch_array($result))
         {
              $list .= '<option value="'.$disp['soort'].'">  '.$disp['soort'].' </option>'; 
         }

			$list .= '</select></td></tr>';
			
			
			
			$list .= '<tr><td><strong>'.$lang_reis_accommodatie.'</strong></td><td>: <select name="accommodatie">';
		$sql = "SELECT * FROM `reizen_accommodatie` ";
        $result = mysql_query($sql);
         while($disp = mysql_fetch_array($result))
         {
              $list .= '<option value="'.$disp['accommodatie'].'">  '.$disp['accommodatie'].' </option>'; 
         }

			$list .= '</select></td></tr>';
								
			$list .= '<tr><td><strong>'.$lang_config_lang_website.'</strong></td><td>: <select name="gebied">';
		$sql = "SELECT * FROM `reizen_gebieden` ";
        $result = mysql_query($sql);
         while($disp = mysql_fetch_array($result))
         {
              $list .= '<option value="'.$disp['gebied'].'">  '.$disp['gebied'].' </option>'; 
         }

			$list .= '</select></td></tr>';

// -------------------------------------------------
			$list .= '</table>';
			$list .= '<br /><input type="submit" value="'.$lang_config_save.'"></input><br /><br />';
			echo $list;
			
		  		} elseif ($_GET['action'] == 2) {
			// Voeg reis Toe
			$sql = "INSERT INTO reizen_aanbod VALUES('','".$_POST['titel']."','".$_POST['sterren']."','".$_POST['tekst']."', '".$_POST['prijs']."', '".$_POST['soort']."', '".$_POST['accommodatie']."', '".$_POST['aanbieding']."',now(),'".$_POST['gebied']."') ";
			/*$sql = "INSERT INTO reizen_aanbod VALUES titel='".$_POST['titel']."', prijs='".$_POST['prijs']."', sterren='".$_POST['sterren']."', tekst='".$_POST['tekst']."', soort='".$_POST['soort']."', accommodatie='".$_POST['accommodatie']."', aanbieding='".$_POST['aanbieding']."'WHERE id='1'";	*/
			$result = $modx->db->query($sql);
			echo $lang_config_update;	
		}
		
	 	case "foto upload":
	include($path.'test2.php');
	break;
 
zorg dat je twee knoppen heb met beide een aparte naam.
Hierop kan je dan controleren met
PHP:
if (isset($_POST['naam_1'])) {
   /* Voer code voor knop 1 uit */
} elseif (isset($_POST['naam_2'])) {
  /* Voer code voor knop 2 uit */
}

en dan zorgen dat iedere knop iets anders doet

Maar als je een foto wilt uploaden en iets aan de database wilt toevoegen (weet niet of je dat wilt, maar lijkt mij wel),
moet je gebruik maken van $_FILES. Kijk maar eens naar de volgende link.
http://php.net/manual/en/features.file-upload.php

Je moet namelijk aangeven wat je iets gaat uploaden anders werkt het nooit

groeten vreugde
 
Laatst bewerkt:
Dank je voor je antwoord,

JE oplossing kan ik helaas niet toepassen, omdat ik het 2de form geinclude heb in het eerste.
Het eerste gedeelte zorgt ervoor dat ik tekst en prijzen kan ingeven en opslaan in de database, en de include (form) zorgt ervoor dat ik foto's kan uploaden, die overigens later nog in de DB moeten, maar dat zoek ik uit hoe dat moet als ik dit probleempje heb opgelost.

Waarschijnlijk heb ik dit ook wel knullig gedaan, maar ik begin net met PHP, en al doende leer ik bij.

Mocht je tips suggesties hebben, hoor ik graag;)

inhoud van de include:
PHP:
<?php
//kijken of er een bestand is geselecteerd 
if(isset($_FILES['bestand'])) { 
    //als het bestand groter is dan 2048000 bytes(2MB) word hij niet toegelaten 
    if($_FILES['bestand']['size'] > 2048000) { 
        echo "Het bestand is <b>" . $_FILES['bestand']['size'] . "</b>, het maximale toegstaan is <b>2MB</b>"; 
    } else { 
        //kijken of het bestand wel een gif, png of jpg is 
        if($_FILES['bestand']['type'] == "image/gif" || $_FILES['bestand']['type'] == "image/png"  || $_FILES['bestand']['type'] == "image/pjpeg" || $_FILES['bestand']['type'] == "image/jpeg") { 
            //kijken of er een nieuwe naam aan het bestand is gegeven 
            if(empty($_POST['naam'])) { 
                $naam = $_FILES['bestand']['name']; 
            } else { 
                //strip de extensie om die achter de nieuwe bestandsnaam te plakken 
                $x = strrchr($_FILES['bestand']['name'], "."); 
                $naam = $_POST['naam'] . $x; 
            } 
            //het bestand uploaden met de nieuwe of oude naam 
            move_uploaded_file($_FILES['bestand']['tmp_name'], "/xampp/htdocs/modx/modx/assets/modules/reizen/foto/" . $naam); 
            //voor linux of unix hosts chmodden we het bestand naar 777 zodat iedereen um kan zien 
            chmod("/xampp/htdocs/modx/modx/assets/modules/reizen/foto/" . $naam, 0777); 
			echo "Bestand uploaden gelukt!";
        } else { 
            echo "Het bestand is geen png, jpg of gif"; 
        } 
    } 
} else { 
    echo "Selecteer een plaatje"; 
} 
?> 
<form action="" method="post" enctype="multipart/form-data"> 
<b>Bestand:</b> <input type="file" name="bestand"><br> 
<b>Nieuwe naam:</b> <input type="text" name="naam"><br> 
<input type="submit" name="submit" value="Upload"> 
</form>
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan