php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 24.08.2006, 16:01  
Benutzer
 
Registriert seit: 11.04.2006
Beiträge: 95
winki
winki eine Nachricht über ICQ schicken
Standard Fehlermeldung richtig beheben!

Hallo ich ahbe folgende Datei admin.php! Wenn ich es im localhost (http://localhost/admin.php) aufrufe, werden mir folgende Melcungen angezeigt.
Code:
Notice: Undefined index: action in C:\Dokumente und Einstellungen\Berti\Eigene Dateien\Website\admin.php on line 15

Notice: Undefined index: action in C:\Dokumente und Einstellungen\Berti\Eigene Dateien\Website\admin.php on line 30

Notice: Undefined index: action in C:\Dokumente und Einstellungen\Berti\Eigene Dateien\Website\admin.php on line 47
Wenn ich dann eine Aktion durchführe sind diese Meldungen weg, aber alle und nicht nur, die Meldung deren Aktion gerade durchgeführt wurde. Was ist da in meinem Script falsch?

PHP-Code:
<?php
    
/**
    *
    * @author       < >
    * @version      1.0
    * @module       Newssystem
    * @copyright    Copyright (c) 2006 by Adalbert Rohr
    */
    
error_reporting(E_ALL);
    
// Mögliche Fehler im Scipt ausgeben

    
include ('inc/config.php');
    
// Konfigurationsdatei laden

    
if($_GET['action']=='1' AND $_GET['id']) {
        
$db mysql_connect(MYSQL_HOSTMYSQL_USERMYSQL_PASS) OR die(mysql_error());
        
mysql_select_db(MYSQL_DATABASE$db) OR die(mysql_error());
        
// Verbindung zur Datenbank aufbauen

        
$sql "DELETE FROM
                   bero_news
               WHERE
                   nw_id = "
$_GET['id'];

        
$result mysql_query($sql$db) OR die(mysql_error());
        
// Datensatz-Ausgabe festlegen
    
}
    
// Ein Datensatz soll gelöscht werden

    
if($_GET['action']=='2' AND $_GET['id']) {
        
$db mysql_connect(MYSQL_HOSTMYSQL_USERMYSQL_PASS) OR die(mysql_error());
        
mysql_select_db(MYSQL_DATABASE$db) OR die(mysql_error());
        
// Verbindung zur Datenbank aufbauen

        
$sql "UPDATE
                   bero_news
               SET
                   nw_pruef = '1'
               WHERE
                   nw_id = "
$_GET['id'];

        
$result mysql_query($sql$db) OR die(mysql_error());
        
// Datensatz-Ausgabe festlegen
    
}
    
// Ein Datensatz soll freigeschaltet werden

    
if($_GET['action']=='3' AND $_GET['id']) {
        
$db mysql_connect(MYSQL_HOSTMYSQL_USERMYSQL_PASS) OR die(mysql_error());
        
mysql_select_db(MYSQL_DATABASE$db) OR die(mysql_error());
        
// Verbindung zur Datenbank aufbauen

        
$sql "UPDATE
                   bero_news
               SET
                   nw_pruef = '-1'
               WHERE
                   nw_id = "
$_GET['id'];

        
$result mysql_query($sql$db) OR die(mysql_error());
        
// Datensatz-Ausgabe festlegen
    
}
    
// Ein Datensatz soll gesperrt werden

    
$db mysql_connect(MYSQL_HOSTMYSQL_USERMYSQL_PASS) OR die(mysql_error());
    
mysql_select_db(MYSQL_DATABASE) OR die(mysql_error());
    
// Verbindung zur Datenbank herstellen

    
$sql "SELECT
               nw_id,
               nw_titel,
               nw_autor,
               nw_pfad,
               nw_text,
               nw_datum,
               nw_pruef
           FROM
               bero_news
           ORDER BY
               nw_id DESC"
;

    
$result mysql_query($sql$db) OR die(mysql_error());
    
// Datensatz-Ausgabe festlegen

    
echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"\n";
    echo 
"  \"http://www.w3.org/TR/html4/transitional.dtd\">\n";
    echo 
"<html>\n";
    echo 
"<head>\n";
    echo 
"    <meta http-equiv=\"content-type\" content=\"text/html; charset=ISO-8859-1\">\n";
    echo 
"    <meta name=\"description\" content=\"\">\n";
    echo 
"    <meta name=\"keywords\" content=\"Berti, Adalbert, Rohr, News, Newssystem\">\n\n";
    echo 
"    <title>News</title>\n";
    echo 
"    <link rel=\"stylesheet\" type=\"text/css\" href=\"css/style.css\">\n";
    echo 
"    <link rel=\"shortcut icon\" href=\"http://www.berti-rohr.de/favicon.ico\">\n";
    echo 
"    <script src=\"js/scripts.js\" type=\"text/javascript\"></script>\n";
    echo 
"</head>\n\n";
    echo 
"<body>\n";
    echo 
"<div id=\"main\">\n";
    if(
mysql_num_rows($result)) {
        while(
$row mysql_fetch_assoc($result)) {
            include(
'inc/replace.php');
            
$datum date("d.m.Y @ H:i"strtotime($row['nw_datum']));
            echo 
"\n";
            echo 
"<table border=\"0\" cellspacing=\"1\" cellpadding=\"0\" id=\"newseintrag\">\n";
            echo 
"  <tr>\n";
            echo 
"    <td id=\"links\" class=\"titel\">[b]‹"$datum ."›[/b] (by "$row['nw_autor'] .")</td>\n";
            echo 
"    <td class=\"titel\">[b]‹"$row['nw_titel'] ."›[/b]</td>\n";
            echo 
"  </tr>\n";
            echo 
"  <tr>\n";
            echo 
"    <td id=\"links\" class=\"bild\">";
            if(
$row['nw_pfad']!='') {
                echo 
"<img src=\""$row['nw_pfad'] ."\" width=\"120\" height=\"90\" class=\"bild\" alt=\""$row['nw_titel'] ."\">";
            }
            echo 
"</td>\n";
            echo 
"    <td class=\"text\">"$text ."</td>\n";
            echo 
"  </tr>\n";
            echo 
"  <tr>\n";
            echo 
"    <td colspan=\"2\">[b]Admin:[/b]\n";
            echo 
"    <a href=\"edit.php?id="$row['nw_id'] ."\">Editieren</a> -\n";
            if(
$row['nw_pruef']=='-1') {
                echo 
"    <a href=\""$_SERVER['PHP_SELF'] ."?id="$row['nw_id'] ."&action=2\" onClick=\"return Sicherheitsabfrage(this);\">Anzeigen</a> -\n";
            } else {
                echo 
"    <a href=\""$_SERVER['PHP_SELF'] ."?id="$row['nw_id'] ."&action=3\" onClick=\"return Sicherheitsabfrage(this);\">Nicht anzeigen</a> -\n";
            }
            echo 
"    <a href=\""$_SERVER['PHP_SELF'] ."?id="$row['nw_id'] ."&action=1\" onClick=\"return Sicherheitsabfrage(this);\">Löschen</a>\n";
            echo 
"    </td>\n";
            echo 
"  </tr>\n";
            echo 
"</table>\n";
        }
    } else {
        echo 
"Keine News vorhanden!\n";
    }
    echo 
"</div>\n";
    echo 
"</body>\n";
    echo 
"</html>\n";
?>
winki ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 24.08.2006, 16:05  
Erfahrener Benutzer
 
Registriert seit: 17.07.2006
Beiträge: 140
louis
Standard

http://www.google.de/search?hl=de&q=...le-Suche&meta=
louis ist offline  
Alt 24.08.2006, 18:05  
Benutzer
 
Registriert seit: 11.04.2006
Beiträge: 95
winki
winki eine Nachricht über ICQ schicken
Standard

Sorry, aber ich kann mit deinem Link nicht soviel anfangen. ich finde zwar jedemenge seiten, auf denen der Fehler angezeigt wird, aber keine seite, auf der mal beschrieben wird, wie man diesen fehler beheben kann!
__________________
Eifersucht ist eine Leidenschaft, die mit Eifer sucht, was Leiden schafft
winki ist offline  
Alt 24.08.2006, 18:09  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Naja les dir die Fehlermeldung durch. Es ist eben noch nicht dieser Index gesetzt. Und wenn du die Aktion durchführst dann ist eben diese Variable gesetzt! Musst halt prüfen ob die Variable gesetzt ist dann kommt kein Fehler.
Flor1an ist offline  
Alt 25.08.2006, 08:35  
Erfahrener Benutzer
 
Registriert seit: 17.07.2006
Beiträge: 140
louis
Standard

Zitat:
Zitat von winki
Sorry, aber ich kann mit deinem Link nicht soviel anfangen. ich finde zwar jedemenge seiten, auf denen der Fehler angezeigt wird, aber keine seite, auf der mal beschrieben wird, wie man diesen fehler beheben kann!
Kannst du nicht lesen??? Der erste Treffer schreibt (sogar in Deutsch):

Zitat:
Ursache: Das Postarray Element 'var' existiert nicht, vor der Verwendung dieses Elementes sollte die Existenz geprüft werden, z.B. mit isset und empty
louis ist offline  
Alt 25.08.2006, 09:24  
there's only one psycho
 
Benutzerbild von PsychoEagle
 
Registriert seit: 21.08.2007
Beiträge: 1.283
PHP-Kenntnisse:
Anfänger
PsychoEagle ist ein sehr geschätzer MenschPsychoEagle ist ein sehr geschätzer MenschPsychoEagle ist ein sehr geschätzer Mensch
PsychoEagle eine Nachricht über ICQ schicken PsychoEagle eine Nachricht über Skype™ schicken
Standard

Kurz gesagt: Du musst isset($_GET['action']) noch mit in deine IF-Anweisungen tun.

Anstatt
PHP-Code:
    if($_GET['action']=='1' AND $_GET['id']) { 
musst du
PHP-Code:
    if(isset($_GET['action']) AND $_GET['action']=='1' AND $_GET['id']) { 
Das natürlich überall
__________________
"Weaseling out of things is important to learn. It's what separates us from the animals ... except the weasel." (Homer J. Simpson)
PsychoEagle ist offline  
Alt 25.08.2006, 09:50  
Benutzer
 
Registriert seit: 06.03.2006
Beiträge: 39
schiff
Standard

Bitte so:
PHP-Code:
if( isset( $_GET['id'] ) AND $_GET['action']=='1' 
Folgendes musst du weglassen:
PHP-Code:
AND $_GET['id'
schiff ist offline  
Alt 25.08.2006, 09:59  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

Dann prüft er allerdings nicht auf die Existenz id. Wofür das notwendig ist, ist mir nicht klar.
PHP-Code:
if (isset ($_GET['action']) && isset($_GET['id']) && ($_GET['cation === '1])) 
Desweiteren sollten die Abfragen mit elseif anstelle von nachfolgenden ifs verknüpft werden.
KingCrunch ist offline  
Alt 25.08.2006, 10:34  
there's only one psycho
 
Benutzerbild von PsychoEagle
 
Registriert seit: 21.08.2007
Beiträge: 1.283
PHP-Kenntnisse:
Anfänger
PsychoEagle ist ein sehr geschätzer MenschPsychoEagle ist ein sehr geschätzer MenschPsychoEagle ist ein sehr geschätzer Mensch
PsychoEagle eine Nachricht über ICQ schicken PsychoEagle eine Nachricht über Skype™ schicken
Standard

Stimmt, sorry Schiff. Kommt vom stupiden Copy&Paste bei Fragen die schon 1000 mal da waren und die man nur monoton schnell abarbeitet Oo

Zitat:
Zitat von KingCrunch
Dann prüft er allerdings nicht auf die Existenz id. Wofür das notwendig ist, ist mir nicht klar.
PHP-Code:
if (isset ($_GET['action']) && isset($_GET['id']) && ($_GET['cation === '1])) 
Desweiteren sollten die Abfragen mit elseif anstelle von nachfolgenden ifs verknüpft werden.
warum schreibst du alles in Klammern -> () ?

Ausserdem ist $_GET['cation === '1'] komplett falsch. Nicht nur ein Rechtschreibfehler, sondern auch falscher Vergleich

PHP-Code:
if(isset($_GET['action'], $_GET['id']) && $_GET['action'] === '1'
Tuts auch, und du hast keine 2 isset (bei AND kann man die Zusammenfügen mit Komma-Trennung)

MFG
__________________
"Weaseling out of things is important to learn. It's what separates us from the animals ... except the weasel." (Homer J. Simpson)
PsychoEagle ist offline  
Alt 25.08.2006, 10:56  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

Zitat:
Ausserdem ist $_GET['cation === '1'] komplett falsch. Nicht nur ein Rechtschreibfehler, sondern auch falscher Vergleich
Ja, stimmt, sagst es aber selbst: Ma eben runter gekritzelt

Zitat:
Tuts auch, und du hast keine 2 isset (bei AND kann man die Zusammenfügen mit Komma-Trennung)
Jo, stimmt, gehört zu Dingen, die ich mir nicht merke, weil selten benötigt Ist wahrscheinlich auf performanter
__________________
Nicht jeder Fehler ist ein Bug.
KingCrunch ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
fehlermeldung bei mysql_connect unterdrücken Smily0412 PHP Tipps 2007 2 03.07.2007 18:02
Fehlermeldung umbenennen Soese PHP Tipps 2007 3 13.03.2007 13:33
script läuft und funktioniert gibt aber fehlermeldung aus? Promaetheus PHP Tipps 2006 5 12.09.2006 23:42
file_get_contents fehlermeldung abfangen? sputnik83 PHP Tipps 2006 6 05.07.2006 15:35
Fehlermeldung Datenbanken 6 23.10.2005 12:37
Fehlermeldung PHP Tipps 2005-2 2 04.09.2005 04:04
Ich will Fehlermeldung vermeiden. Zero.exe PHP Tipps 2005-2 2 02.08.2005 13:11
[Erledigt] VARIABLEN WERDEN NICHT RICHTIG VERARBEITET!!!! HILFE PHP Tipps 2005-2 6 02.07.2005 18:32
[PHP+Mysql] Suchescript klappt nicht richtig PHP Tipps 2005-2 9 01.07.2005 21:37
fehlermeldung bei mysql_connect code PHP Tipps 2005 5 25.05.2005 22:13
fragwürdige Fehlermeldung PHP Tipps 2005 5 19.05.2005 15:45
Fehlermeldung beim Upload-Script --> Wie beheben?? TheTommynator PHP Tipps 2005 15 23.01.2005 17:44
Script bei Strato mit Fehlermeldung, bei Netbeat ok PHP Tipps 2004-2 14 08.12.2004 11:08
Eine mir unbekannte Fehlermeldung TheSkaterFriend PHP-Fortgeschrittene 3 08.09.2004 15:08
Ist alles richtig? (Bekomme Fehlermeldung) PHP Tipps 2004 7 07.06.2004 23:09

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
das postarray element \'var\' existiert nicht, existenz geprüft isset und empty, das postarray element \'var\' existiert nicht, vor der verwendung dieses elementes sollte die existenz geprüft werden, z.b. mit isset und empty, notice: undefined index: beheben oder icht, das postarray element \' existiert nicht php, undefined index: beheben, $action = $_get[\'action\']; fehler beheben, notice undefined index beheben, bero_news, notice: undefined index: wie beseitigen, notice: undefined index beheben, postarrey element existiert nicht, notice: undefined index: beheben, post array element vor der verwendung die existenz geprüft isset, notice fehler beheben, notice: undefined index: action fehler beheben, postarray vor der verwendung existenz geprüft mit isset und empty, undefined index beheben, ursache: das postarray element \'var\' existiert nicht, vor der verwendung dieses elementes sollte die existenz geprüft werden, z.b. mit isset und empty, postarray element \'var\' existiert nicht, vor der verwendung dieses elementes sollte die existenz geprüft werden, z.b. mit isset und empty

Alle Zeitangaben in WEZ +2. Es ist jetzt 12:35 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.