Ausgabe einer KundenID nach Kundenanlage

EifelFrosch

Mitglied
hallo zusammen,

ich habe folgendes Problem:
Ich möchte eine kleine Kundendatenbank schreiben, bei der jeder Kunde automatisch eine Kundennummer bekommt. Das funktioniert auch. Nach der Kundenanlage soll der Datensatz nochmal ausgegeben werden. Auch das funktioniert, nur nicht die Kundennummer, die zwar korrekt angelegt, dann aber nicht ausgegeben wird.

KdNr ist Primary Key und wird automatisch eingefügt! Der Benutzer gibt die Kundennummer nicht aktiv ein. Sie wird von der Datenbank generiert!

Ich poste hier mal den Code der HTML - und der entsprechenden PHP-Datei.
Ich denke, es könnte an der Formulardefiniton liegen...aber leider komme ich da nicht weiter.

Wäre echt nett, wenn jemand helfen könnte

HTML:
<title>Neuer Kunde HTML</title>
</head>

<body text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000">

<font size = -1>Sie befinden sich hier => Neuen Kunden anlegen</font>
<br><br><br>

Bitte tragen Sie die Daten des neuen Kunden in das Formular ein: <p>

<form action ="neuer Kunde.php" method="post"><!--Hier kommt jezt das Formular -->

<table cellpadding="5">
<tr>
<td>SS & P Kundennummer:</td>
<td>
Wird automatisch vergeben
<input type="hidden" name="kdnr" value="">
</td>
</tr>
</table>
<table cellpadding="5">
<tr>
<td>Anrede:</td>
<td>
<select name="anrede">
<option value="Herr" selected>Herr
<option value="Frau">Frau
<option value="Firma">Firma
<option value="Verein">Verein
<option value="Stiftung">Stiftung
</select>
</td>
<tr>
<td>
Name:
</td>
<td>
<input name="name">
</td>
</table>
...

PHP

<body>

<?php
if ($speichern)
{

$db = mysql_connect("localhost","root","salm");

$sqlab = "insert kundendaten";
$sqlab .= "(kdnr, anrede, name) values ('$kdnr' ODER NULL GEHT BEIDES, '$anrede', '$name')";
mysql_db_query("sspkunden", $sqlab);


$num = mysql_affected_rows();
if ($num>0)
{
echo "Es wurde 1 Datensatz hinzugefügt<p>";
echo "$kdnr ";
echo "$anrede ";
echo "$name";
}

else
{
echo "Es ist ein Fehler aufgetreten, ";
echo "es wurde kein Datensatz hinzugefügt<p>";
}
mysql_close($db);
}
?>

danke schonmal!
 
Zuletzt bearbeitet:
Das du keine Kundennr. bekommst ist klar:
Du gibst $kdnr aus, aber diese Variable bleibt das ganze Script über leer.

Schau dir mal die Funktion mysql_insert_id() an. Die gibt dir die ID zurück, die zuletzt vergeben wurde.


Zwei Tips am Rande:
- Während du an einem Script arbeitest, lass dir von PHP neben Fehlern auch Hinweise ausgeben ( error_reporting() bzw. in deiner PHP Konfiguration).
- Arbeite mit den superglobalen Arrays. In deinem Fall $_POST['anrede'] usw.
 
Zurück