Hallo.
Ja schon wieder ich. Ich komme einfach nicht weiter.
Ich habe nun (nach mildtätiger Mithilfe von euch) und nach einigen Veränderungen meinerseits folgendes script:
Mein erstes Problem ist nun, dass wenn ein neuer Datensatz eingegeben wurde dieser dann auch automatisch angezeigt wird, ohne dass der User F5 drücken muss.
Es soll übrigens nur ein einziger Datensatz pro user erzeugt werden.
Das zweite Problem ist, dass, wenn ein DS vorhanden dieser bei Aufruf der seite erscheinen soll (macht er, wenn ich neu lade), er änderbar ist und auch eingetragen wird. An dieser Stelle scheitere ich nun auch mit meinem update, bzw ich schaffe es nicht dahin zu kommen. Und das dritte Problem: wie spreche ich die ID des DS an, die ich eigtl. in einem hidden halten möchte ?
Ja schon wieder ich. Ich komme einfach nicht weiter.
Ich habe nun (nach mildtätiger Mithilfe von euch) und nach einigen Veränderungen meinerseits folgendes script:
Mein erstes Problem ist nun, dass wenn ein neuer Datensatz eingegeben wurde dieser dann auch automatisch angezeigt wird, ohne dass der User F5 drücken muss.
Es soll übrigens nur ein einziger Datensatz pro user erzeugt werden.
Das zweite Problem ist, dass, wenn ein DS vorhanden dieser bei Aufruf der seite erscheinen soll (macht er, wenn ich neu lade), er änderbar ist und auch eingetragen wird. An dieser Stelle scheitere ich nun auch mit meinem update, bzw ich schaffe es nicht dahin zu kommen. Und das dritte Problem: wie spreche ich die ID des DS an, die ich eigtl. in einem hidden halten möchte ?
PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript">
<!--
//Standard-Fehlermeldung
strMsg='Fehler';
arrFields=new Array();
arrFields['Heimathafen'] = new Array(1,/^.{1,20}/,'bitte Heimathafen eintragen!');
arrFields['Bootsname'] = new Array(1,/^.{1,25}/,'Name des Bootes vergessen?');
arrFields['schiffstyp[]'] = new Array(0,'==1','Bitte mind. und max. 1 Schiffstyp wählen');
</script>
<script type="text/javascript" src="YT.js"></script>
<?php
function test()
{echo "TEST";}
//hier musst du die Datenbankverbindung aufbauen!
//ein Beispiel dazu kommt, aber auskommentiert!
$wasda = false;
$bAendern = false;
$link = mysql_connect('localhost', 'root', '');
if (!$link)
{
die('Verbindung nicht möglich : ' . mysql_error());
}
// benutze Datenbank usr_web101_1
$db_selected = mysql_select_db('test', $link);
if (!$db_selected)
{
die ('Kann DB nicht benutzen : ' . mysql_error());
}
//in diese Tabelle werden die Daten geschrieben:
$db_table = "tblStamm";
//wir suchen im Stamm, wenn ein DS da ist, dann darf kein neuer angelegt werden
$sSQL = "SELECT * FROM tblSTAMM LIMIT 1";
$ww = mysql_query($sSQL)
or die(mysql_error());
$result = mysql_fetch_array($ww);
$num_rows = mysql_num_rows($ww);
echo "$num_rows Rows\n";
if ($num_rows > 0) {
$wasda = true;
echo "$num_rows Rows\n";
}
//Formular wurde mit 'speichern' abgeschickt...
if ( $_POST["speichern"] )
{ echo "speichern";
//Schiffstypen raus, um zu vereinfachen, wennich mal weiss wie man checkboxwerte ANZEIGT, kommen sie wieder...
//ist es so besser ?
$query = sprintf("INSERT INTO {$db_table} (Boot_Heimathafen, Boot_Name, Boot_Hersteller, Boot_Laenge, Boot_Breite) VALUES ('%s', '%s', '%s','%s','%s')",
mysql_real_escape_string($_POST['Heimathafen']),
mysql_real_escape_string($_POST['Bootsname']),
mysql_real_escape_string($_POST['Hersteller']),
mysql_real_escape_string($_POST['Laenge']),
mysql_real_escape_string($_POST['Breite']));
mysql_query($query, $link);
//echo "'{$_POST['Heimathafen']}', '{$_POST['Bootsname']}', '{$_POST['Hersteller']}', '{$_POST['Laenge']}',
// '{$_POST['Breite']}', '{$schiffstyp}', '{$_POST['message']}'";
}
// formular wurde mit 'aendern' abgeschickt
if (isset($_POST['$aendern']))
{echo "DS vorhanden und ändern ";
//mysql_query("UPDATE tblStamm (Boot_Heimathafen ='{$_POST['Heimathafen']}' WHERE PK_Stamm = '$_POST['ID']' ") OR PRINT("Fehler beim Eintragen: ".mysql_error()."<br>");
mysql_query("UPDATE tblStamm SET Boot_Heimathafen ='{$_POST['Heimathafen']}' WHERE PK_Stamm = '$_POST['ID']' ") OR PRINT("Fehler beim Eintragen: ".mysql_error()."<br>");
}
?>
</head>
<body>
<form method="post" name="formular" onsubmit="return check_form(this)" action="">
<table border="0" cellspacing="0" cellpadding="5" summary="formularcheck" width="528">
<tr>
<th colspan="2"> Stammdaten <span>(*=Pflichtfeld)</span> die Tabellenstyles müssen überarbeitet werden ...</th>
</tr>
<tr>
<td width="188"colspan="1" class="ll"> Heimathafen</td>
<td width="407"><input type="text" size="16" class="uip" name="Heimathafen" value="<?php if ($wasda){echo $result[3];} ?>" ></td>
</tr>
<tr>
<td class="ll"colspan="1"> Name des Bootes *</td>
<td width="407"><input type="text" name="Bootsname" size="16" value="<?php if ($wasda){echo $result[2];} ?>"></td>
</tr>
<tr>
<td class="ll"colspan="1"> Hersteller</td>
<td width="407"><input type="text" name="Hersteller" size="16" value="<?php if ($wasda){echo $result[4];} ?>"></td>
</tr>
<tr>
<td class="ll"colspan="1"> Laenge</td>
<td width="407"><input type="text" name="Laenge" size="4"></td>
</tr>
<tr>
<td class="ll"colspan="1"> Breite</td>
<td width="407"><input type="text" size="4" name="Breite"></td>
</tr>
<tr>
<td class="ll"colspan="1"> sonstige Mitteilungen <span>(max.100 Zeichen)</span> </td>
<td><textarea rows="4" cols="40" class="uip" name="message"></textarea></td>
</tr>
<tr>
<td><? if($wasda) { ?>
<input type="submit" name="aendern" onclick ="test();" value="Modifizieren" />
<? }else { ?>
<input type="submit" name="speichern" value="Einfügen" />
<? } ?></td>
<td class="ac"colspan="1"><input name="Reset" type="reset" value="zurücksetzen"><input name="ID" type="text" value="<?php if ($wasda){echo $result[0];} ?>"></td>
</tr>
</table>
</form>
</body>
</html>