fabmeister19
Goto Top

Übergabe der Variable in Hyperlink funktioniert nicht

Hallo Leute,
ich habe folgendes Problem:
Ich baue grad an einem Projektinformationssystem. Auf einer bestimmten Seite sind alle Projekte aufgelistet, die ich per Hyperlink-Klick bearbeiten lassen will. Deshalb hab ich folgendes versucht:

....
$sql="SELECT projektname FROM li_projekte";  
        $ausgabe = mysql_query("$sql") or die (mysql_error());  
        echo("<br>");  
        while ($row=mysql_fetch_row($ausgabe))
        {
       echo ("<a href='edit_projekt.php?projekt=$row' target='haupt'>$row</a> <br>");  
        }
        
        ?>
in dem teil werden mir alle Projekte aufgelistet.

wenn ich auf der aufrufenden Seite "edit_projekt.php?projekt='$row" aufrufe meldet er immer:
<head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  
        <title>Projekt &auml;ndern</title>
    </head>
    <body>
                <?php
        $name = $_GET('projekt');                                 <-- **line 8**  
Fatal error: Function name must be a string in C:\xampp\xampp\htdocs\PIS\edit_projekt.php  on line 8"  

ich würde also gern mein projektnamen übergeben und den parameter dort übernehmen.

Content-Key: 144282

Url: https://administrator.de/contentid/144282

Printed on: April 24, 2024 at 19:04 o'clock

Member: noodyn
noodyn Jun 07, 2010 at 09:12:23 (UTC)
Goto Top
also ich stelle mich auf die Seite des Compilers face-smile
ich verstehe dein Script auch nicht. Was ist denn "projekt" ?
Normalerweise nutzt man ja:
http://Seite?Parameter=Wert

Nur wo arbeitest du mit dem Parameter "projekt"?
Member: fabmeister19
fabmeister19 Jun 07, 2010 at 09:19:23 (UTC)
Goto Top
wenn ich auf den "Hyperlink" zeige zeigt er mir richtigerweise an: http://localhost/PIS/edit_projekt.php?projekt=Wehr. Den wert holt er sich aus einer Datenbank. Zuvor hab ich ein Formular gebastelt wo die Projektparameter eingegeben werden.
Jetz will ich per Klick auf den Hyperlink genau diese Formularseite wieder aufrufen, er soll die werte aus der Datenbank eintragen, und dem Anwender so ermöglichen die Werte zu editieren und die Änderungen in dem jeweiligen datenbankeintrag zu überschreiben.
Member: AndreasHoster
AndreasHoster Jun 07, 2010 at 09:32:46 (UTC)
Goto Top
Ich bin ja kein Webdesigner, aber wäre es möglich, daß $row ein paar Sonderzeichen enthält, die einfach so in einer URL nicht übergeben werden können?
Ich glaube, da gibts sogar Funktionen, die Strings für URLs codieren und decodieren.
Member: andrix
andrix Jun 07, 2010 at 09:57:01 (UTC)
Goto Top
schon mal mit

$name = $_GET["projekt"];

getestet?

Weil $_GET ja keine Funktion sondern ein Array ist.
Member: EvilMoe
EvilMoe Jun 07, 2010 at 10:48:18 (UTC)
Goto Top
Zitat von @andrix:
schon mal mit

$name = $_GET["projekt"];

getestet?

Weil $_GET ja keine Funktion sondern ein Array ist.
Wie "andrix" schon sagte: $_GET['projekt'] muss es in zeile 8 heißen. Nicht mit runden Klammern ;)
Member: Arano
Arano Jun 07, 2010 at 13:55:24 (UTC)
Goto Top
Ich möchte da nur noch was "ergänzen"...

PHP-Manual - Variable functions
Daraus erklärt sich auch die Fehlermeldung: "Function name must be a string"
Schließlich genthält $_GET keinen String sondern ein Array und ein Array kann man logischerweise nicht als Funktionsnamen verwenden ;)

~Arano
Member: fabmeister19
fabmeister19 Jun 07, 2010 at 14:01:42 (UTC)
Goto Top
danke für eure hilfreichen antworten. es hat mit euren tipps funktioniert.