Ankündigung

Einklappen
Keine Ankündigung bisher.

Probleme mit $_Get['action']

Einklappen

Neue Werbung 2019

Einklappen
Dieses Thema ist geschlossen.
X
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • highway82
    hat ein Thema erstellt Probleme mit $_Get['action'].

    Probleme mit $_Get['action']

    Hallo,

    von einem File aus möchte ich per href mit $_GET Daten an eine Funktion übergeben, die mir dann einen INSERT auf eine DB ausführt.

    PHP-Code:
    <?php
    if($_GET['action'] == "add"){
        
    insert();
    }

    $gsusers="
    SELECT services.functions_id AS func_id, functionnames.names AS func_name, users.name AS user_name, functions.functionnumber_number AS func_num
    FROM services
    LEFT JOIN guardservices ON (services.events_startUnixtime = guardservices.services_events_startUnixtime AND services.events_endUnixtime = guardservices.services_events_endUnixtime AND services.plans_id = guardservices.services_plans_id AND services.functions_id = guardservices.services_functions_id)
    LEFT JOIN users ON guardservices.users_id = users.id
    LEFT JOIN functions ON services.functions_id = functions.id
    LEFT JOIN functionnames ON functions.functionnames_token = functionnames.token
    WHERE services.events_startUnixtime = "
    .$row_services["events_startUnixtime"]."
    AND services.events_endUnixtime = "
    .$row_services["events_endUnixtime"]."
    AND services.plans_id = "
    .$row_services["id"]."
    "
    ;

    $sql mysql_query($gsusers);

    $array_func = array ();

    while (
    $row mysql_fetch_assoc($sql)){
        
    $array_funcid[$row['func_name']] = $row['func_id'];
        
    $array_number[$row['func_name']] = $row['func_num']; 
        if(
    $row["func_num"]!=0){ 
            if(empty(
    $row['user_name'])){
                
    $array_func[$row['func_name']][] = 'empty';
            }else{
                
    $array_func[$row['func_name']][] = $row['user_name'];
            }
        }else{
            
    $array_func[$row['func_name']][]= 'Alle Verfügbaren Kräfte';
        }
    }

    foreach (
    $array_func as $key => $values) {
        
    //leer
        
    $count_val count($values);
        
    $missing $array_number[$key] - $count_val;
        if(
    $missing>0){
            
    $array_func[$key] = array_merge ($values array_fill ($missing 'empty'));
        }else{
            
    $array_func[$key] = $values;
        }

    }  



    foreach(
    $array_func as $function => $users){
    //if(in_array($array_user[$functions_main],$function)){
        
    echo "<td style='width:200px;'>";
            echo 
    "<table>";
            echo 
    "<tr>";
                echo 
    "<th>".$array_funcid[$function]."</th>";
                echo 
    "<th>".$function."</th>";
                echo 
    "<th>".$array_number[$function]."</th>";
            echo 
    "</tr>";
            foreach(
    $users as $user) {
                if(
    $user==$users_main){
                echo 
    "<tr>";
                    echo 
    "<td style='width: 20px;'></td>";
                    echo 
    "<td style='text-align: center; width: 160px;'>";
                        echo 
    $user;
                    echo 
    "</td>";
                    echo 
    "<td style='width: 20px;'>";
                        echo 
    "<a href='delete.inc.php?start=".$row_services["events_startUnixtime"]."&end=".$row_services["events_endUnixtime"]."&plan=".$row_services["id"]."&func=".$array_funcid[$function]."&user=".$user_id."'><img src='images/delete.png' name='-'></a>";
                    echo 
    "</td>";
                echo 
    "</tr>";
                }elseif(
    $user=='empty'){
                echo 
    "<tr>";
                    echo 
    "<td style='width: 20px;'></td>";
                    echo 
    "<td style='text-align: center; width: 160px;'>";
                        echo 
    "---";
                    echo 
    "</td>";
                    echo 
    "<td style='width: 20px;'>";
                        echo 
    "<a href='?action=add&start=".$row_services["events_startUnixtime"]."&end=".$row_services["events_endUnixtime"]."&plan=".$row_services["id"]."&func=".$array_funcid[$function]."&user=".$user_id."'><img src='images/add.png' alt='delete'></a>";
                    echo 
    "</td>";
                echo 
    "</tr>";
    ...
    (Alles in der selben Datei)

    Leider bekomme ich jetzt folgenden Hinweis:
    Notice: Undefined index: action in ...

    Hat jemand eine Ahnung was ich in dem File falsch mache?

  • nikosch
    antwortet
    [MOD: Geschlossen]

    Einen Kommentar schreiben:


  • highway82
    antwortet
    OK, vielen Dank.
    Das tutorial kannte ich nicht

    Einen Kommentar schreiben:


  • MFGSparka
    antwortet
    Das hier ist doch die fortführung eines anderen Threads von dir.
    http://www.php.de/php-einsteiger/878...et-werden.html
    Ich sehe ja ein, dass du ein paar Problemchen mit deinem Script hast aber ich rate dir jetzt einfach mal folgendes Tutorial durchzuarbeiten.
    http://tut.php-quake.net/de/
    Ziemlich leicht verständlich und ich glaube, dass dort auch diese Frage umfassend und verständlich erklärt wird.

    Einen Kommentar schreiben:


  • highway82
    antwortet
    Zitat von highway82 Beitrag anzeigen
    Vielen Dank versuche ich sofort.

    Eine Überlegung von mir.
    Kann es auch daran liegen, dass ich auf meiner Hauptseite per $_GET['session'] zwischen den Inhalten welchsel?
    Hier sieht ja der Link wie folgt aus:
    PHP-Code:
    <a href='index.php?session=test'>Test</a
    Wenn ja, wie könnte man das umgehen?
    Ich habe das Problem.
    Es lieg wirklich daran, dass ich auf der Haupseite auch $_GET zum Seitenwechsel verwende.
    Diese Werte werden mit bei var_dump($_GET) übergeben.

    Hat jemand eine Idee, wie das lösen kann?
    Über den Link möchte ich Werte übergeben ($_GET['action']), mit denen ich Einträge in der DB lösche

    Einen Kommentar schreiben:


  • highway82
    antwortet
    Vielen Dank versuche ich sofort.

    Eine Überlegung von mir.
    Kann es auch daran liegen, dass ich auf meiner Hauptseite per $_GET['session'] zwischen den Inhalten welchsel?
    Hier sieht ja der Link wie folgt aus:
    PHP-Code:
    <a href='index.php?session=test'>Test</a
    Wenn ja, wie könnte man das umgehen?

    Einen Kommentar schreiben:


  • jspit
    antwortet
    Mach am Anfang deines scriptes ein
    PHP-Code:
    var_dump($_GET); 
    und schau dir an ob deine GET-Parameter auch angeliefert werden.

    Um die Notice: Undefined index: abzufangen gibt es isset(), hast du bestimmt hier schon mal gesehen..

    Einen Kommentar schreiben:


  • highway82
    antwortet
    Ja es geht um den GET-Aufruf und mein Problem ist, dass ich nicht weiss warum es nicht geht.
    Habe eine andere Seite beide Funktionen gleich aufgebaut und es geht. Und ich erkenne den unterschied nicht.
    Nur dass hier alles in php eingebettet habe.

    Akt. Seite:
    PHP-Code:
    //GET
    if($_GET["action"] == "add"){
        
    insert();
    }

    //href
    echo "<a href='?action=add&start=".$row_services['events_startUnixtime']."&end=".$row_services['events_endUnixtime']."&plan=".$row_services['id']."&func=".$array_funcid[$function]."&user=".$user_id."'><img src='images/add.png' alt='delete'></a>"
    Alte Seite:
    PHP-Code:
    if($_GET['action']=="add"){
        $t1 = $_GET['user_id'];
        $t2 = $_GET['gs_id'];
        $t3 = $_GET['cell_id'];
        
        mysql_query("INSERT INTO plan ( users_id, guardservices_gs_id, cell_id) VALUES ($t1, $t2, $t3)");
    }

    <a href="?action=add&user_id=<?=$result_user[2];?>&gs_id=<?=$row1->gs_id?>&cell_id=<?= $f?>"><img src="images/add.png" alt="delete"></a>
    Wie kann ich $_GET['action'] setzten

    Einen Kommentar schreiben:


  • Pompei81
    antwortet
    Keine Ahnung was Du da genau vor hast, aber die Fehlermeldung sagt doch schon alles. Eine Zeilennummer ist zwar nicht dabei, aber es wird wahrscheinlich das Oberste sein, also $_GET['action'] ist nicht gesetzt.
    Warum das so ist, das weißt nur du, weil wir den Aufruf nicht kennen.

    Einen Kommentar schreiben:

Lädt...
X