Schwer zu beschreiben, schaut es euch doch einfach mal an

dempf

Mitglied
Ich habe zwei Dateien.

datei1.php und
datei2.php

In der datei1.php habe ich vollgenden Code:
PHP:
<a href=\" datei2.php?id=$idwert\">

fertiger link z.B. ../datei2.php?id=1

In der datei2.php habe ich vollgenden Code:
PHP:
$eintrag_ds = holeDS2( "eintraege", "id", "$idwert" );

Meine frage:

Wie kann ich auf die Variable $idwert die in der datei1.php steht, von der datei2.php zugreifen?

Oder kann ich irgend wie durch den link (../datei2.php?id=1) die zahl (1) aus lesen?

Gruss Dempf
 
Du machst hier eine Parameterübergabe über "get". Du kannst im Zielskript die Variable $_GET['<name_der_var>'] benutzen, die den Wert hat, der hinter dem "=" im Links steht. Diese Variable steht Dir sofort zur Verfügung, aber erst seit PHP 4.1, glaube ich, oder 4.0.

In Deinem Fall also:

PHP:
 $eintrag_ds = holeDS2( "eintraege", "id", $_GET['idwert'] );

Hela
 
Zuletzt bearbeitet:
@command

Achtung, Dein Vorschlag funktioniert nur, solange REGISTER GLOBALS = ON ist !
Und das ist seit PHP 4 Punkt irgendwas standdardmäßig aus Sicherheitsgründen eben nicht mehr der Fall!

Empfehlung an dempf: Mach es mit $_GET wie Hela Wahn beschreiben. Das funktioniert immer (solange keine Uralt-PHP-Version...).

Alle Werte, die Du in der URL übergibst, stehen im (globalen) Array $_GET.

Zur Diagnose immer hilfreich:
PHP:
print_r ( $_GET );

"Fröhliches Basteln"
Micha
 
Ich habe es mit $_GET versucht, doch es klappt nicht.
habe es so versucht:

$eintrag_ds = holeDS2( "eintraege", "id", $_GET['idwert'] );

Wen ich mit print_r ( $_GET ); prüfe, wird mir die id jedoch schön angezeigt.




Mit $id hat aber alles ge klappt.
 
Also, wenn Du

datei2.php?id=1


aufrufst, dann mußt Du in datei2.php auch mit


$_GET['id']

auf diesen Parameter zugreifen.


Micha
 
Zuletzt bearbeitet:
habe jedoch noch ein problem:

datei1.php


PHP:
$eintrag_ds = holeDS2( "eintraege", "id", "$id" );

PHP:
aktualisiereEintrag( $id, $form[name],
  				   $form[loacation], $form[hp],
  				   $form[mail] )

PHP:
$form = $eintrag_ds;

datei2.php

PHP:
function aktualisiereEintrag( $id, $name, $location, $hp, $mail )
  	{
  	global $link;
  	$query = "UPDATE eintraege set name='$name', location='$location', 
  			  hp='$hp', mail='$mail'
  			  WHERE id='$id'";
  	$ergebnis = mysql_query( $query, $link );
  	if ( ! $ergebnis )
  		die ( "aktualisiereEintrag update error: ".mysql_error() );
  	}


was nicht klappt wäre, das $id wider nich übergeben wird.

gruss dempf
 
dempf hat gesagt.:
PHP:
function aktualisiereEintrag( $id, $name, $location, $hp, $mail

was nicht klappt wäre, das $id wider nich übergeben wird.
?

Wie sieht es denn vor Deinem Aufruf aus? Schließlich mußt DU $id als ersten Parameter richtig übergeben... und wenn der da schon nicht stimmt....
 
Zurück