php: selbst definierte variable weiterleiten

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/php_selbst_definierte_variable_weiterleiten_175352/page_1 - zur Vollversion wechseln!


Easyrider16 schrieb am 24.01.2007 um 15:18

hi

folgendes problem: habe in nem formular ne variable definiert, name: $available2
der wert wird durch eine rechnung ausgerechnet

irgendwie haut die weiterleitung ins nächste formular nicht hin :rolleyes:

Code zur weiterleitung (andere variablen werden auch weitergegeben)

Code: PHP
<form action="update.php?bid=<?php echo ($_REQUEST['bid'])?>&fcount=<?php echo ($_POST['fcount'])?>&aid=<?php echo ($_REQUEST['aid'])?>&$available2=<?php echo ($available2) ?>" method="POST">


code zum anzeigen im nächsten formular:

Code: PHP
<?php echo $_REQUEST[$available2];   

findet ihr den fehler ?


Tex schrieb am 24.01.2007 um 15:32

echo $_REQUEST['available2'];

edit: und das $-zeichen vor "available2" beim übergeben weglassen.


Easyrider16 schrieb am 24.01.2007 um 15:45

habs korrigiert, funktioniert aber leider nicht


Tex schrieb am 24.01.2007 um 15:52

habs probiert - bei mir gehts.

probier mal $_GET['available2'] statt $_REQUEST['available2']

ansonsten poste den gesamten code + fehlermeldungen


Easyrider16 schrieb am 24.01.2007 um 15:57

$available2 wird weiter unten ausgerechnet
auf der nächsten seite steht nur der von dir gepostete befehl
fehlermeldung bekomme ich keine, aber er zeigt mir keinen wert an

Code: PHP
<?php
	$link = mysql_connect ("localhost", "hak_buchung", "hak_buchung") or die ("Fehler!".mysql_error());
	$db = mysql_select_db ("hak_buchung", $link) or die ("Fehler!".mysql_error());

	$sql = "SELECT * FROM tblauktionen  INNER JOIN tblwarenkorb ON tblwarenkorb.aid = tblauktionen.aid WHERE BID =".$_REQUEST['bid'];
	$result = mysql_query ($sql, $link) or die ("Fehler!".mysql_error());
	$num = mysql_num_rows($result);
	for ($i = 0; $i <$num; $i++)
	{
		$row = mysql_fetch_array($result); 
}
?>

<html>
<head>
<title>formular</title>
<link rel="stylesheet" href="../../_css/main.css" type="text/css">
</head>

<script language="JavaScript">
<!--
var ZielDatei = "index.php?update_confirm.php";

if (!top.FramesetGeladen){
if(document.images)
top.location.replace(ZielDatei); 
else 
top.location.href = ZielDatei ;
}
//-->
</script>




<body>
<h1>Änderungsbestätigung</h1>
<table border = "0">
<tr>
<td width = "290"><hr><hr></td>
</tr>
</table>
<form action="update.php?bid=<?php echo ($_REQUEST['bid'])?>&fcount=<?php echo ($_POST['fcount'])?>&aid=<?php echo ($_REQUEST['aid'])?>&available2=<?php echo (available2) ?>" method="POST">

<h1><?php echo ($row["subject"]); ?></h1>

<table border = "0">
	<tr>
	<td width = "270"><?php echo ($row["description"]); ?><br><br><br></td>
	<?php if ($row["picture"]=="") { ?>
	<td> <img src = "images/nopic.jpg"> </td><?php }
	else { ?>
	<td><img src = "images/article images/<?php echo ($row["picture"]);?>"> <br><br></td> 
	<?php }?>
	</tr>
	<tr>
		<td width = "170"><hr>Anzahl:  <?php echo ($_POST['fcount'])?><br><br></td>
	</tr>
	<tr>
		<td>Einzelpreis:  <?php echo ($row["price"]); ?>€ <br><br></td>
		<td>Limit:   <?php echo ($row["limit1"]); ?> Stück<br><br></td>
		</tr>
	<tr>
		<td>Summe:  <?php echo ($_POST['fcount']) * ($row["price"]) ?> €<br><br></td>
	</tr>
	
</table>

<br><br><h4>
<?php 

	if (($row["count"]) > $_POST['fcount']) {
		$available2 = ((($row["available"]) + ($row["count"])) - $_POST['fcount']);
		}
	else {
		$available2 = ((($row["available"]) - ($_POST['fcount'])) + ($row["count"]));
		} 

	if (($_POST['fcount'] > $row["limit1"]) or ($available2 < 0)) {	
		echo "* Zu große Menge, bitte korriegieren Sie Ihre Eingabe!";
		?><meta http-equiv="refresh" content="3;URL=update_form.php?aid=<?php echo ($_REQUEST['aid']);?>"> 
		 <?php } 	  
	 else { ?>
	     <input type="submit" name="fsubmit" value="Bestätigen">
		 <?php } ?>
</h4>
  
	 </form> 

</body>
</html>


Tex schrieb am 24.01.2007 um 16:02

das kann nicht gehen, da $available oben beim form-tag noch nicht bekannt war. du könntest das ergebnis in ein <input type="hidden"> feld am ende des formulars geben, dann klappt es.

edit: warum machst du überhaupt ein formular, wenn du doch kein einziges feld drinnen hast? für deine zwecke würde ein einfacher link reichen.

edit2: du könntest ansonsten auch die berechnung von $available2 vorverlegen.


Easyrider16 schrieb am 24.01.2007 um 16:26

vielen dank

hab da leider noch ein problem mit einer weiterleitung


Code: PHP
<script language="JavaScript">
<!--
var ZielDatei = "index.php?home.php";

if (!top.FramesetGeladen){
if(document.images)
top.location.replace(ZielDatei); 
else 
top.location.href = ZielDatei ;
}
//-->
</script>


<?php
$_username = $_SERVER['PHP_AUTH_USER'];

$link = mysql_connect ("localhost", "hak_buchung", "hak_buchung") or die ("Fehler!".mysql_error());
$db = mysql_select_db ("hak_buchung", $link) or die ("Fehler!".mysql_error());

$sql = "SELECT * FROM tbluser WHERE user LIKE '$_username'";
$result = mysql_query($sql, $link)or die ("Fehler!".mysql_error());
$num = mysql_num_rows($result);
$row = mysql_fetch_array($result);

function date_mysql2german($datum) {
list($jahr, $monat, $tag) = explode("-", $datum);
return sprintf("%02d.%02d.%04d", $tag, $monat, $jahr);
}
?>
<html>
<head>
<title>index</title>
<link rel="stylesheet" href="../../_css/main.css" type="text/css">
</head>
<body>
<br>
<form action="formular.php?id=<?php echo ($row["id"])?>" method="POST">
<?php echo ("Herzlich Willkommen, ".$row['vorname']." ".$row['zuname'])."!";
	$sql = "SELECT * FROM tblauktionen";
	$result = mysql_query ($sql, $link) or die ("Fehler!".mysql_error());
	$num = mysql_num_rows($result);
	for ($i = 0; $i <$num; $i++)
	{
		$row = mysql_fetch_array($result); 
		?>
		<table border = "0">
		<tr><hr>
			<td width="120"><a href="formular.php?aid=<?php echo ($row["aid"]); ?>"><?php echo ($row["subject"]); ?></a></td>
			<td><?php if ($row["picture"]=="") { ?> <img src = "images/nopic.jpg" width="45" height="55" alt="Vorschau" border="1"> <?php } 
			          else { ?> <img src = "images/article images/<?php echo ($row["picture"]);?>" width="55" height="55" alt="Vorschau" border="1"> <?php } ?></td>
		</tr>
		<tr>
			<td width="150"> noch vorhanden: <?php echo ($row["available"]); ?> <br><br><br><br></td>     
			<td> Enddatum: <?php echo (date_mysql2german ($row["to"])); ?> <br><br><br><br></td>
		</tr>
		</table>
<?php
}
?>
<h6>
<a href ="buchungen.php" >Buchungen</a>
</h6>
</form>
</body>
</html>

die variable id wird nicht weitergegeben


mat schrieb am 24.01.2007 um 19:25

die "id" variable muss als hidden input in das forumlar.


Easyrider16 schrieb am 31.01.2007 um 15:44

Zitat von mat
die "id" variable muss als hidden input in das forumlar.

hab ich gemacht, funktioniert aber leider nicht




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2024