php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 19.11.2006, 10:55  
Benutzer
 
Registriert seit: 20.02.2006
Beiträge: 51
lolipop 999
Standard Undefined Index bei Aufruf von Script

Hallo

Habe folgendes Problem bzw. Fehler

Notice: Undefined index: Artist in F:\Apache2\htdocs\daba103.php on line 56

Hier der Code:

PHP:
PHP-Code:
<html> 

    <head> 
    <meta http-equiv="Content-Language" content="de-at"> 
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> 
    <meta name="GENERATOR" content="Microsoft FrontPage 4.0"> 
    <meta name="ProgId" content="FrontPage.Editor.Document"> 
    <title>Artists</title> 
    </head> 

    <body> 

    

 </p> 
    

 </p> 
    

Artists:</p> 
    

 </p> 

    <?
    error_reporting
(E_ALL)
    
?>

    <? 

    
include("Common_Functions.php"); 
    include(
"connect.php"); 


    
// $Aktion = $HTTP_GET_VARS[Aktion]; 



    
$sSql="SELECT ID,Title FROM musikvideos "

    
$arErgebnis_Recordset=get_SQL($sSql); 

    
?> 

    <h1 align="center"><font face="Arial, Helvetica, sans-serif"><font color="#FFFF00">[b][i]<font face="Verdana, Arial, Helvetica, sans-serif">Musikvideos</font>[/i][/b]</font></font> 
    </h1> 
    <form name="form1" method="get" action="artists.htm"> 
    Video: 
    <? 



    $iZeile
=0
    foreach(
$arErgebnis_Recordset as $dPerson){ 
    if (
mat_bgerade($iZeile)){ 
    
$sStil "zeile_a"
    } 
    else{ 
    
$sStil "zeile_b"
    } 
    print(
"<tr class = '$sStil' > \n"); 

    print(
"<td>$dPerson[Artist]</td>\n"); 
    print(
"</tr>\n"); 
    
$iZeile++; 
    } 
    
?>

    <?php 
    $Name 
$arErgebnis_Recordset['Title']; 
    
$Temp explode(','$Name); 
    
$NameNeu trim($Temp[1]).' '.trim($Temp[0]); 
    
?>
    </body> 

    </html>


Hier die Line 56, 63 und 65

PHP:
PHP-Code:
print("<td>$dPerson[Artist]</td>\n"); 

PHP:
PHP-Code:
$Name $arErgebnis_Recordset['Title']; 

PHP:
PHP-Code:
$NameNeu trim($Temp[1]).' '.trim($Temp[0]); 
Die SQL struktur sieht so aus:

Die DB heißt Media
Die Tabelle musikvideos
Das Feld Title

im Feld Titel sind die Datensätze so dargestellt.

John, Elton - daniel (live).mpg

Diese Script soll die Datensätze so teilen :

Elton John - daniel (live).mpg


Hier noch die include Common Function.php

PHP:
PHP-Code:
<?


    $db_sDatenbank 
"media";          //Name der Datenbank
    
$db_verbindung 0;            //Identifikation der Datenbankverbindung

    
function db_verbindung($sHost$sDatenbank$sUser$sPasswort)
        {
            
            global 
$db_sDatenbank$db_verbindung;
            
$db_verbindung = @mysql_connect($sHost$sUser$sPasswort);
            
            
$db_sDatenbank $sDatenbank;
            
                if (!
$db_verbindung){    
                    
//optimierte Schreibweise ! (Not) kehrt Wert um
                     
error_log("Verbindung zur Datenbank fehlgeschlagen"0);
                    die (
"[b]Server nicht erreichbar...");
                    
                    
                
                }
                else
                {
                @
mysql_select_db($db_sDatenbank$db_verbindung);
                
                }
        }

    function 
mat_bgerade($iZahl)
    {

        return 
$iZahl == 0;

    }  

    function 
get_SQL$sSql
    { 
       global 
$db_sDatenbank$db_verbindung

       
$arRecordset =  array();    // Initialisierung des Arrays 
             
       
$ergebnis mysql_query($sSql$db_verbindung); 
       
// gibt result-ID zurück ODER FALSE!!!!!!! 

       // es folgt Error Protokoll, wenn ! ergebnis 
       
if (!$ergebnis
       { 
          
error_log($sSql,0); 
          
error_log(mysql_error(),0);         
       } 
       else 
       { 
          
// Jetzt landen wir nur noch hier, wenn $ergebnis brauchbar ist 
          
while($dDatensatz mysql_fetch_assoc($ergebnis)) 
          { 
             
array_push($arRecordset$dDatensatz); 
          } 
       } 
       return 
$arRecordset// Entweder leeres Array oder alle Datensätze 
    
}          
            
                    
        

    function 
db_loeschen($sTabelle$sSql)
        {
        global 
$db_sDatenbank$db_verbindung;
        
$sSql " DELETE FROM $sTabelle WHERE $sSql";
        
        
$ergebnis mysql_query($sSql$db_verbindung); 
        
            
//gibt result-ID zurück
            //es folgt Error Protokoll, wenn ! ergebnis
            
if (!$ergebnis){
                
error_log($sSql,0);
                
error_log(mysql_error(),0);        
            }
        
        
        
        
        
        }
        

        
/*
    function db_Sorted_Query( $sTabelle, $sSql, $Orderby)
        {
            global $db_sDatenbank, $db_verbindung;
            
            $sSql = "SELECT * FROM $sTabelle WHERE " . $sSql . " Order by " . $Orderby;
            
            $ergebnis = mysql_query($sSql, $db_verbindung); 
            //$ergebnis = mysql_db_query($db_sDatenbank, $sSql, $db_verbindung); 
            //gibt result-ID zurück
            //es folgt Error Protokoll, wenn ! ergebnis
            if (!$ergebnis){
                error_log($sSql,0);
                error_log(mysql_error(),0);        
            }
            
            $aDatensaetze =  array();      
            // Initialisierung des Arrays
            echo $sSql;
            
            while($dDatensatz = mysql_fetch_assoc($ergebnis)){ 
                // Sowohl Speicherung als auch Bedingung wird hier durchgeführt bzw. überprüft
                array_push($aDatensaetze, $dDatensatz);
            }
            return $aDatensaetze;
            
        }    
    */

        
?>

und hier noch das include connect.php

PHP:
PHP-Code:
<?
    db_verbindung
("localhost""media""root""");  
    
?>



Danek für eure Hilfe
lolipop 999 ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 19.11.2006, 11:05  
axo
Erfahrener Benutzer
 
Registriert seit: 24.12.2004
Beiträge: 1.814
axo ist zur Zeit noch ein unbeschriebenes Blatt
Standard

auch für dich, verdammte kacke: wie wär's mit ein wenig stfw ? es gibt fast 6 millionen suchergebnisse zu "undefined index".
axo ist offline  
Alt 19.11.2006, 11:28  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Der Index Artist existiert für den Array $dPerson eben nicht.
Zergling-new ist offline  
Alt 19.11.2006, 11:34  
Benutzer
 
Registriert seit: 20.02.2006
Beiträge: 51
lolipop 999
Standard

Job das habe ich auch gerade gesehen
Danke für deine Hilfe

Jetzt werden leider die Datensätze nur in einer Wurst dargestellt und nicht in einer Tabelle

Danke für eure Hilfe

lolipop 999
lolipop 999 ist offline  
Alt 19.11.2006, 12:54  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Zitat:
Zitat von Zergling
Der Index Artist existiert für den Array $dPerson eben nicht.
Wenn man nur ID und Title auswählt, verwundert das eigentlich auch gar nicht.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 19.11.2006, 16:52  
Benutzer
 
Registriert seit: 20.02.2006
Beiträge: 51
lolipop 999
Standard

Naja hab jetzt herum gebastelt

Jetzt hab ich eine Schöne Ausgabe.

bin ich meinen entgültigen ziel noch immer nicht näher.

Die Datensätze werden noch immer so angezeigt

Hirsch, Ludwig

anstatt so

Ludwig(leerzeichen) Hirsch

Hier nun der fast funzende Code:

PHP-Code:
<html>
<head>
<title>Musikvideos</title>

<style type="text/css">
body {    scrollbar-base-color:#66CCFF;
    scrollbar-face-color:#66CCFF; //Scrollbar vorne Schieberfarbe
    scrollbar-track-color:#FFFF00;
    scrollbar-shadow-color:#990033;
    scrollbar-dark-shadow-color:#FFFFFF;
    scrollbar-arrow-color:#FFFF00;
    scrollbar-3d-light-color:#99cc66;
    scrollbar-highlight-color:#66CCFF; 
    }
</style> 
<link rel="stylesheet" href="styles.css" type="text/css">


<?
error_reporting
(E_ALL)
?>

<? 

include("Common_Functions.php"); 
include(
"connect.php"); 


// $Aktion = $HTTP_GET_VARS[Aktion]; 



$sSql="SELECT Artist FROM t_artist "

$arErgebnis_Recordset=get_SQL($sSql); 

?> 

<h1 align="center"><font face="Arial, Helvetica, sans-serif"><font color="#FFFF00">[b][i]<font face="Verdana, Arial, Helvetica, sans-serif">Musikvideos</font>[/i][/b]</font></font> 
</h1> 
<form name="form1" method="get" action="daba103.php"> 
Video: 
<? 



echo   "<input type='text' name='sSearchString'>";
   
?>
  <input type="submit" name="Submit" value="Suchen">
  <input type='hidden' name='Aktion' value='wiederholen'>
  <input type="checkbox" name="chk_start_with" value="yes" checked>
  Start with 
  <input type="checkbox" name="chk_Show_All" value="all">
  List All 
</form>



</p>
<table width= "1360" border="0" cellspacing="0" cellpadding="3">
  <tr class="spaltentitel"> 

    <td width='500'>Artist</td>
   
   </tr>  



      <? 
$iZeile
=0;
foreach(
$arErgebnis_Recordset as $dPerson){
        if (
mat_bgerade($iZeile)){
            
$sStil "zeile_a";
        }
        else{
            
$sStil "zeile_b";
        }
        print(
"<tr class = '$sStil' > \n");
        print(
"<td>$dPerson[Artist]</td>\n");
        print(
"</tr>\n");
        
$iZeile++;
    }
  
?>

<?
$Name 
$arErgebnis_Recordset['Artist']; 
$Temp explode(','$Name); 
$NameNeu trim($Temp[1]).' '.trim($Temp[0]); 
?>

</table>


 </p>



</body> 

</html>
Danke üfr euren super Support

mfg

lolipop 999[/php]
lolipop 999 ist offline  
Alt 19.11.2006, 17:04  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Zitat:
Zitat von lolipop 999
anstatt so
Ludwig(leerzeichen) Hirsch
Was tust Du denn dafür, damit die Namen so angezeigt werden?

Zitat:
Zitat von lolipop 999
PHP-Code:
<?php
...
$sSql="SELECT Artist FROM t_artist "

$arErgebnis_Recordset=get_SQL($sSql); 

...

foreach(
$arErgebnis_Recordset as $dPerson){
...
   print(
"<td>$dPerson[Artist]</td>\n");  // Hier gibst Du den Eintrag aus der DB aus...
...
}

// ... und hier fummelst Du noch etwas dran rum
// Oder versuchst es zumindest.

$Name $arErgebnis_Recordset['Artist']; 
$Temp explode(','$Name); 
$NameNeu trim($Temp[1]).' '.trim($Temp[0]); 
?>
Wie wäre es, wenn Du uns mal ein Script ohne Warnings präsentierst?
$arErgebnis_Recordset hat doch sicher keinen Index 'Artist'.
Diese Namens-Neuordnung müsste in den Block der foreach-Schleife und dann mit $dPerson durchgeführt werden.

Gerüchteweise muss hinter error_reporting(E_ALL) auch noch ein ;

Das sollte Dir Dein Parser eigentlich alles sagen...
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 19.11.2006, 17:14  
Benutzer
 
Registriert seit: 20.02.2006
Beiträge: 51
lolipop 999
Standard

Danke für die Hilfe, aber ich muss sagen dass ich mich da überhaupt nicht durchblicke

Danke

lolipop 999
lolipop 999 ist offline  
Alt 19.11.2006, 17:17  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard


OK dann nochmal gaaanz langsam...

Du gibst zuerst alle Namen unverändert aus.

Danach schnappst Du Dir einen nicht existierenden Eintrag aus Deinem Ergebnis-Array und versuchst, den Namen wie gewünscht umzudrehen.
Und nachdem Du am Namen rumgefummelt hast, wird mit der Variable nix mehr gemacht. Insbesondere wird sie nicht ausgegeben.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 19.11.2006, 17:26  
Benutzer
 
Registriert seit: 20.02.2006
Beiträge: 51
lolipop 999
Standard

Danke für die exakte Hilfe

Hier nur noch ein Fehler:

Undefined offset: 1 ($NameNeu = trim($Temp[1]).' '.trim($Temp[0])

PHP-Code:
$Name $dPerson['Artist'];
        
$Temp explode(','$Name);
        
$NameNeu trim($Temp[1]).' '.trim($Temp[0
Danke für die Hilfe

mfg

lolipop 999
lolipop 999 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
Notice: Undefined index Kein Genie PHP Tipps 2008 5 23.04.2008 17:40
PHP Notice: Undefined index: ORIG_PATH_TRANSLATED TFT PHP Tipps 2008 1 18.04.2008 11:42
Prototype Ajax Array Datenmüll notyyy HTML, Usability und Barrierefreiheit 2 08.04.2008 10:57
[Erledigt] Undefined Index-Fehlermeldung PHP Tipps 2006 14 07.12.2006 17:02
Undefined index PHP Tipps 2005-2 1 07.08.2005 17:10
[Erledigt] Verzögerung durch included Script? Umgehen? PHP Tipps 2005-2 4 10.07.2005 19:26
Undefined index LA-Finest PHP Tipps 2005-2 15 15.06.2005 09:47
[Erledigt] Relay Script PHP-Fortgeschrittene 11 01.06.2005 16:02
2 verschachtelte while Schleifen. Großes Performanceproblem Datenbanken 3 30.05.2005 12:52
[Erledigt] Hilfe bei Download Verwaltungs Script PHP Tipps 2005 8 04.05.2005 10:29
Fehlermeldung undefined index: 14 Niedi PHP Tipps 2005 2 22.04.2005 11:40
Undefined index PHP Tipps 2005 5 05.02.2005 14:57
Abbruch bei Aufruf von ImageFunktion PHP-Fortgeschrittene 27 07.11.2004 21:43
[Erledigt] array aus tabelle &amp; Undefined index Datenbanken 19 26.07.2004 14:33

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
undefined index:, lolipop999, $arergebnis_recordset

Alle Zeitangaben in WEZ +2. Es ist jetzt 12:57 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.