<?
function my_mysqli_result($res,$crow,$field)
{
    // Array definieren
    $feldname=array();
    
    // Anzahl der Zeilen/Datensätze der SQL-Abfrage ermitteln
    $num_lines = mysqli_num_rows($res);
       
    if ($num_lines < 1)
    {
        // es gibt keine Datensätze zum Anzeigen
        return false;
    }

    // alle Namen der Tabellenfelder/Tabellenspalten im Array $feldname speichern
    for ($i=0;$feldinfo=mysqli_fetch_field($res);$i++)
    {
        $feldname[$i]=$feldinfo->name;
    }

    // den Ergebniszeiger der SQL-Abfrage wieder zur ersten Tabellenspalte rücksetzen
    mysqli_field_seek($res,0);    
    
    // die gewünschte Zeile d.h. den gewünschten Datensatz suchen
    for ($i=0; $row = mysqli_fetch_row($res); $i++)
    {
        if ($i == $crow) // wenn der gewünschte Datensatz gefunden ist
        {
            // Anzahl der Spalte ermitteln
            $anz_spalten=count($row);
    
            // die gewünschte Spalte d.h. das gewünschte Tabellenfeld suchen
            for ($j=0; $j<$anz_spalten;$j++)
            {
                if ($feldname[$j] == $field) // das gewünschte Tabellenfeld ist gefunden
                {
                    // den Ergebniszeiger der SQL-Abfrage wieder zum ersten Datensatz rücksetzen
                    mysqli_data_seek($res,0);
                    
                    // die Daten im Datensatz sind in derselben Reihenfolge wie 
                    // die Namen der zuvor ermittelten Tabellenfelder. Daher kann 
                    // der Wert des gewünschten Tabellenfeldes zurückgeliefert werden
                    return $row[$j];
                }
            }
        }
    }

    // den Ergebniszeiger der SQL-Abfrage wieder zum ersten Datensatz rücksetzen
    mysqli_data_seek($res,0);
    
    // das gewünschte Tabellenfeld wurde nicht gefunden
    return false;
}

function get_mysql_data(&$p_name,&$p_notizen,&$p_plz,&$p_gewicht,&$p_gebdatum)
{
   // Sicherheitsdaten inkludieren
   include("../sec/data.php");

   //Verbindung zum Datenbankserver aufbauen 
   $con=mysqli_connect("localhost",$hk_db,$hk_pw,"leiserberge_at"); //hk mysqli 0108118
   if (!$con)
   {
      echo ("Verbindung zu DB-Server/Datenbank kann nicht hergestellt werden: ".mysqli_connect_error()."<br>");
      return false;
   }

   mysqli_set_charset($con,"utf8");
   
   // SQL-Abfragestring festlegen
   // In der Tabell soll es nur genau einen Datensatz geben
   $sqlab="select * from phpcode9 where id=1;";

   // Datenbankabfrage starten
   $res=mysqli_query($con,$sqlab);

   if (!$res)
   {
      // Datenbankabfrage liefert kein Ergebnis
      return false;
   }

   $num=mysqli_num_rows($res);

   if ($num > 1)
   {
      return false;
   }

   if ($num < 1)
   {
      return false;
   }

   // Defaultwerte der Parametervariablen auf einen Leerstring setzen
   $p_name = "";
   $p_notizen= "";
   $p_plz = "";
   $p_gewicht = "";
   $p_gebdatum = "";

   // Daten aus der mySQL-DB auf die Parametervariablen setzen
   $p_name = my_mysqli_result($res,0,"name");
   $p_notizen= my_mysqli_result($res,0,"notizen");
   $p_plz = my_mysqli_result($res,0,"plz");
   $p_gewicht = my_mysqli_result($res,0,"gewicht");
   $p_gebdatum = my_mysqli_result($res,0,"gebdatum");

   return true;
}

if (!get_mysql_data($name,$notizen,$plz,$gewicht,$gebdatum))
{
   // Datenbankfehler
   // HTML-Oberfläche wird nicht ausgegeben
   return false;
}
?>

<html>
<head>
<title>Daten ohne Syntaxpr&uuml;fung zwischen Eingabefelder und mySQL-Datenbank transferieren</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
<!--
function checkInputPhpCode9()
{
   // derzeit keine Syntaxprüfung
   return true;
}
//-->
</script>

</head>
<body bgcolor="#FFFFFF" text="#000000">

<form name="inputForm" method="post"  action="code9a.php" onSubmit="return checkInputPhpCode9();">
   <table border="0" cellspacing="5" cellpadding="0">
   <tr>
      <td>
         <label>Name: </label>
      </td>
      <td>
         <input type="text" name="name" value="<? echo($name);?>" size="15" maxlength="15">
      </td>
    </tr>
    <tr>
       <td align="left" valign="top"> 
          <label>Notizen: </label>
       </td>
       <td>
          <textarea name="notizen" cols="11" rows="5"><? echo($notizen);?></textarea>
      </td>
    </tr>
    <tr>
      <td>
         <label>Postleitzahl: </label>
      </td>
      <td>
         <input type="text" name="plz" value="<? echo($plz);?>" size="4" maxlength="4">
      </td>
    </tr>
    <tr>
      <td>
         <label>Gewicht: </label>
      </td>
      <td>
         <input type="text" name="gewicht" value="<? echo($gewicht);?>" size="5" maxlength="5">
      </td>
    </tr>
    <tr>
      <td>
         <label>Geburtsdatum: </label>
      </td>
      <td>
         <input type="text" name="gebdatum" value="<? echo($gebdatum);?>"size="10" maxlength="10"> 
      </td>
      <td>
         <input type="submit" name="send" value="DB-Speichern">
      </td>
    </tr>
  </table>


</form>
</body>
</html>