PHP Fehler: Undefined variable: string in....

erniedd

Grünschnabel
Hallo, ich bekomme folgende Fehlermeldungen, und brauche dabei Hilfe, und gleich schon ma am anfang. bin anfänger ...
naja hoffe ihr könnt mir dabei trotzdem helfen :-)


Code:
Notice: Undefined index: site in C:\xampp\htdocs\gameboxx\db\Genre\Game BoxX Adventure RPG.php on line 215
Code:
Notice: Undefined variable: contentWeb in C:\xampp\htdocs\gameboxx\db\Genre\Game BoxX Adventure RPG.php on line 282

Notice: Undefined variable: string in C:\xampp\htdocs\gameboxx\db\Genre\Game BoxX Adventure RPG.php on line 201

Nun mein Code:

PHP:
 <?php

define("MAX_EINTRAEGE",10);


define("NAV_LEISTE",11);


define("DB_HOST","localhost"); 
define("DB_NAME","phost136983"); 
define("DB_USER","phost136983"); 
define("DB_PASS","donaldd1"); 


$db = MYSQL_CONNECT(DB_HOST,DB_USER,DB_PASS) or die("Datenbank-Connect fehlgeschlagen");
$db_check = MYSQL_SELECT_DB(DB_NAME) or die("Datenbank momentan nicht erreichbar");



mysql_query("SET NAMES 'utf8_general_ci'");
mysql_query("SET CHARACTER SET utf8_general_ci");


function navigationsLeiste($SitesComplete,$seiteAktuell,$extVariables){
        
     
    $NavCeil = floor(NAV_LEISTE / 2);
    
    
    if($seiteAktuell > 1){
        $string .= '<a href="?site=1'.$extVariables.'"><<</a>&nbsp;&nbsp;';
        $string .= '<a href="?site='.($seiteAktuell-1).$extVariables.'"><</a>&nbsp;&nbsp;';
    }
    

    for($x=$seiteAktuell-$NavCeil;$x<=$seiteAktuell+$NavCeil;$x++){
     
        if(($x>0 && $x<$seiteAktuell) || ($x>$seiteAktuell && $x<=$SitesComplete))
            $string .= '<a href="?site='.$x.$extVariables.'">'.$x.'</a>&nbsp;&nbsp;';
        
      
        if($x==$seiteAktuell)
            $string .= $x . '&nbsp;&nbsp;';
  // Zeile 199
    }

    if($seiteAktuell < $SitesComplete){
        $string .= '<a href="?site='.($seiteAktuell+1).$extVariables.'">></a>&nbsp;&nbsp;';
        $string .= '<a href="?site='.$SitesComplete.$extVariables.'">>></a>&nbsp;&nbsp;';
    }
    
    return $string;
    
}


$seiteAktuell = 0;
if (isset($_GET['site'])) {
    $seiteAktuell = (int) $_GET['site'];
}  
// Zeile 215

if(empty($seiteAktuell))
    $seiteAktuell = 1;
    

$start = $seiteAktuell * MAX_EINTRAEGE - MAX_EINTRAEGE; 


$Recordset1 = mysql_query("SELECT `tblspieledatenbank`.`int_spiel_id`, 
 `tblspieledatenbank`.`str_spiel_name`, `tblhersteller`.`str_hersteller_name`,
 `tblbetriebsystem`.`str_betriebsystem_name`,
`tblspieledatenbank`.`txt_beschreibung`  FROM `tblgenre` 
 LEFT JOIN `phost136983`.`tblspieledatenbank`
 ON `tblgenre`.`int_genre_id` =
 `tblspieledatenbank`.`int_genre_id` LEFT JOIN `tblbetriebsystem` ON 
 `tblspieledatenbank`.`int_betriebsystem_id` =
 `tblbetriebsystem`.`int_betriebsystem_id`
LEFT JOIN `tblhersteller` ON
`tblspieledatenbank`.`int_hersteller_id` = 
`tblhersteller`.`int_hersteller_id`
 WHERE `tblspieledatenbank`.`int_genre_id` = '3' 
 ORDER BY `tblspieledatenbank`.`str_spiel_name`
 ASC LIMIT $start, ".MAX_EINTRAEGE);
$row_Recordset1 = mysql_fetch_assoc($Recordset1);

$Recordset1Gesamt = mysql_query("SELECT COUNT(*) AS menge FROM tblspieledatenbank"); 
$Eintraege = mysql_result($Recordset1Gesamt,0,"menge");


?>
    </h2>
    <p>&nbsp;
<table border="0" align="center" cellpadding="3" cellspacing="3">
                <tr>
                        <td bgcolor="#BEBBFF" class="fettgross">Name</td>
                  <td bgcolor="#BEBBFF" class="fettgross">Hersteller</td>
                  <td bgcolor="#BEBBFF" class="fettgross">Betriebsystem</td>
                        <td bgcolor="#BEBBFF" class="fettgross">Beschreibung</td>
                </tr>
         <?php do { ?>
                        <tr>
                                <td height="52" nowrap="nowrap" bgcolor="#EAEAEA"><a href="http://www.tutorials.de/test/detail.php?recordID=
								<?php echo $row_Recordset1['int_spiel_id']; ?>" class="bluelink"><strong>
								<?php echo $row_Recordset1['str_spiel_name']; ?></strong></a></td>
                                <td bgcolor="#EAEAEA">
								<?php echo $row_Recordset1['str_hersteller_name']; ?>
                                &nbsp; </td>
                                <td bgcolor="#EAEAEA">
								<?php echo $row_Recordset1['str_betriebsystem_name']; ?>&nbsp; </td>
                          <td bgcolor="#EAEAEA">
						  <?php echo substr( $row_Recordset1['txt_beschreibung'],0, 180)."..."; ?>
                          &nbsp; </td>
                        </tr>
                        <?php } while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)) ; ?> 
    </table>




   
  <p>&nbsp;    </p>
  <p>
   <?php 

    
$contentWeb = '<div align="center">';  
// Zeile 282

$SitesComplete = ceil($Eintraege / MAX_EINTRAEGE);


$contentWeb .= 'Ergebnisseite ' . $seiteAktuell . ' von ' . $SitesComplete . '<br>';


$extVariables = '&var1=wert1&var2=wert2';


$contentWeb .= navigationsLeiste($SitesComplete,$seiteAktuell,$extVariables); 

$contentWeb .= '</div>';

echo $contentWeb;


?>

sorry dass der Code so lang ist ich hab die Zeilen im Code reingeschrieben.
Vielen Dank schon mal :-)
 
Zuletzt bearbeitet:
Alle Variablen, dessen Existenz du dir nicht sicher bist, sollten vorher mit isset auf eben dies geprüft werden. Im Falle von $_GET['site'] also beispielsweise:
PHP:
$seiteAktuell = 0;
if (isset($_GET['site'])) {
    $seiteAktuell = (int) $_GET['site'];
}
Gegebenenfalls solltest du sogar noch prüfen, ob die Variablen die erwarteten Werte enthält (etwa eine Ganzzahl größer 0).
 
hab jetzt nur noch eine Fehlermeldung:


Notice: Undefined variable: string in C:\xampp\htdocs\gameboxx\db\Genre\Game BoxX Adventure RPG.php on line 199


danke schon maaa :-)
 
Hi

undefined variable bedeutet dass du $string noch nirgendwo initialisiert hast.
PHP:
echo $string; //undefined variable
$string .= 'hallo'; // u.v.
irgendeine_funktion($string);///u.v
$string = '';
$string .= 'text';
 
Hi,

es ist ja auch nicht so, dass Dir das nicht nebenan schon erklärt wurde...
Mehrere Communities parallel mit ein und demselben Problem zu beschäftigen, ohne wenigstens zu erwähnen, welche Tipps man woanders bekommen hat und wo und warum es trotzdem noch hakt, ist nicht die feine Art und wird im Allgemeinen auch nicht gerne gesehen.

LG
 
Zurück