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

  • 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?

  • #2
    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.

    Kommentar


    • #3
      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

      Kommentar


      • #4
        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..

        Kommentar


        • #5
          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?

          Kommentar


          • #6
            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

            Kommentar


            • #7
              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.

              Kommentar


              • #8
                OK, vielen Dank.
                Das tutorial kannte ich nicht

                Kommentar


                • #9
                  [MOD: Geschlossen]

                  Kommentar

                  Lädt...
                  X