webForumDet fria alternativet

skicka flera variablar med $_GET['']

PHP

5 svar · 566 visningar · startad av egxezex

Medlem sedan jan. 200786 inlägg
Frågan#1

Har problem att skicka med flera variabler vid en "knapp tryckning". Får följande felmedelande:
Query failed: -------------You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '?komment=' at line 1

i addressfältet ser det ut så här:
http://127.0.0.1/Grej2/redigera.php/?var=134/?komment=

dvs komment får inget värde.

Här är koden:

<?php
ob_start();
session_start();
$ID_ADD = $_GET["var"];
$komment3 = $_GET["komment"];
// Kolla om inloggad = sessionen satt
if (!isset($_SESSION['sess_userlevel']) || $_SESSION['sess_userlevel'] != "admin") {
//  header("Location: index.php");
  header("refresh: 5;url=konto.php");
// eller
  echo "Du har inte behörighet till den här sidan";
  exit;
}
?>
<html>
<head>
<link rel=StyleSheet href="setts/style.css" TYPE="text/css">
</head>
<body class="back">
<?php
include "conn.php"; // Databasanslutningen

// Performing SQL query sh

if (isset ($_GET['var'])){
$query = "SELECT id FROM $mem_table WHERE id =".$_GET['var']." ";
$result = mysql_query($query) or die('Query failed: -------------' . mysql_error());

// Printing results in HTML
echo "<p>Du redigerar användaren:<p>";
//echo "$_SESSION['sess_userlevel'];";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
   echo "\t<tr>\n";
   foreach ($line as $col_value) {
       echo "\t\t<td class=\"text\">$col_value</td>\n";
   }
 
   echo "\t</tr>\n";

}
echo "</table>\n";

// Free resultset
mysql_free_result($result);
} 

if (isset($_FILES['uplfile'])) {
	

	// Mappen där filerna ska hamna
	$upload_dir = 'download/';
	// De tillåtna filtyperna, separerade med komman, utan mellanrum
	$filetypes = 'jpg,gif,png,doc,zip,ppt,txt,pdf';
	// Den största tillåtna storleken (80 kB)
	$maxsize = (1024*20000000);

	// Kontrollera att det angavs en fil
	if(empty($_FILES['uplfile']['name']))
		die('Ingen fil har valts');

	// Kontrollera storleken
	if($_FILES['uplfile']['size'] > $maxsize)
		die('Filen du valde är för stor. Maxstorleken är '.(string)($maxsize/1024).' KB.');

	// Kontrollera filtypen
	$types = explode(',', $filetypes);
	$file = explode('.', $_FILES['uplfile']['name']);
	$extension = $file[sizeof($file)-1];
	if(!in_array(strtolower($extension), $types))
		die('Du har en felaktig filtyp. Endast .jpg, .gif och .png är tillåtet!');

	// Generera unikt filnamn
	$bokstav = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6');
	$thefile = $_FILES['uplfile']['name'];
	while (file_exists($upload_dir.$thefile)) { $img = $bokstav[rand(0, count($bokstav)-1)].$thefile; }

	// Flytta filen rätt
	if (is_uploaded_file($_FILES['uplfile']['tmp_name']) && move_uploaded_file($_FILES['uplfile']['tmp_name'],$upload_dir.$thefile)) {
		echo 'Filen laddades upp!';
 
 			
	echo "$komment3";
	$query3 = "INSERT INTO UserFiles (filename, RefID, Kommentar) VALUES ('$thefile',$ID_ADD,'$komment3')";
	mysql_query($query3) or die('Query failed query3: ' . mysql_error());
	

	
	} else {
		echo 'Ett fel uppstod och filen kunde inte laddas upp.';

		
	}
}
else
{

  ?>
	
	
	<form action="<?php echo $_SERVER['PHP_SELF'] ."/?var=".$_GET['var'],"/?komment=".$_GET['komment']; ?>  " method="post" enctype="multipart/form-data">   //HÄR JAG FÅR PROBLEM MED ATT SKICKA MED BÅDE var och komment

	Fil:&nbsp;<input type="file" name="uplfile"><br>
	<input type="submit" value="Ladda upp filen">
	</form>
	<br><form method="post" action="?">
	<label for="komment"> Kommentar:</label>
	<input type="text" name="komment" />
	
	</br>

	
	
  <?php

}
ob_end_flush();
?>

<?php
echo "<br><a href=\"index.php?logout=\">Logga ut</a>\n<br><br>";
?>
<a href="admin.php">Tillbaka </a><br><br>

</body>
</html>
Medlem sedan dec. 2006382 inlägg
#2
<form action="<?php echo $_SERVER['PHP_SELF'] ."/?var=".$_GET['var'],"/?komment=".$_GET['komment']; ?>  "...

Ska vara:

<form action="<?php echo $_SERVER['PHP_SELF'] ."?var=".$_GET['var'],"&komment=".$_GET['komment']; ?>  "...
Medlem sedan aug. 2004903 inlägg
#3

Vi har provat det du skickade, inga errors, filen åker in va, men i adressfältet är fortfarande komment= alltså tom...

Medlem sedan aug. 2004903 inlägg
#4

Det funkar nu, en blanding utav trötthet, öl och svettiga händer gjorde att jag hade $_POST på ett par ställen där jag skulel ha $_GET...

Tack för all hjälp, uppskattas verkligen!

Medlem sedan juni 20031 837 inlägg
#5

markera gärna tråden som löst om det inte är fler problem

Medlem sedan jan. 200786 inlägg
#6

Precis vaknat.., Och nu har vi fått igång det:). Vill bara säga att all hjälp uppskattas!, Så tack!

256 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)