Zitat von meikel
Ankündigung
Einklappen
Keine Ankündigung bisher.
[Erledigt] Wo ist der Fehler? (Syntax)
Einklappen
Neue Werbung 2019
Einklappen
X
-
-
Zitat von Nordcomhm das heisst?
Lies Dir das durch:
28.15. Notice: Use of undefined constant ...
http://www.dclp-faq.de/q/q-fehler-konstante.html
Kommentar
-
oKay geht
Jetzt kommt aber immernoch der Fehler
Fehler beim ändern des Eintrages! You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
Ich weiss auch ned mehr weiter
Kommentar
-
Zitat von NordcomoKay geht
Wahrscheinlich ist $_POST['id'] leer. Somit ist der SQL String falsch und MySQL meckert.
Kommentar
-
Also wenn ich <? echo $id ?> mache zeigt er ja auch die richtige Nummer an aber nur er machts eben nicht wenn ich das nach WHERE id = '$id'"; mache aber wenn ich es manuell eintragen gehts ja also Fazit:
WHERE id = '30'" ----> GEHT
WHERE id = '$id'" -----> Geht NICHT
WHERE id = $_POST[id]") -----> Geht auch NICHT
hm ich bin doch Anfänger :/ Nur an sowas happert es dann.
Idee?
Kommentar
-
Zitat von NordcomAlso wenn ich <? echo $id ?> mache zeigt er ja auch die richtige Nummer an aber nur er machts eben nicht wenn ich das nach WHERE id = '$id'"; mache aber wenn ich es manuell eintragen gehts ja also Fazit:
if ($id = '')
Die Aussage ist immer wahr, aber danach ist $id leer.
Kommentar
-
Umpf...
Hi, ich bin neu hier!
Ich denke das ich selber noch ein PHP-Newbie bin, aber eins weiß ich:
SCHREIBE DEINEN CODE STRUKTURIERT!!!
Und zu deinem Problem:
Schau dir mal deine ( ) und { } Paare an, für mich scheint es so als hättest du da welche vergessen!!!
Wenn ich mich irre, dann BIG SORRY!!!
Ach, noch was!
HAST DU EINE Location --> HEADER Funktion eingebaut??? Denn das könnte auch das Problem sein!!!
Mann kann bei dir ja nicht alles erkennen!!!
Kommentar
-
SORRY FÜR WIEDER DIESEN VIELEN TEXT!!!
----------------------------
<?php
session_start ();
if (!isset ($_SESSION["user_id"]))
{
header ("Location: index.php"); <--- Könnte auch ein Problem sein! Denn es darf noch nichts übergeben worden sein!
}
include("dbconnect.php");
if(!$action)
{
if(!$id) <-- Das kann hier doch nicht funktionieren oder???
{
die("Keinen Kunden gewählt!");
}
$abfrage = "SELECT * FROM k_customer WHERE id=\"$id\""; <---
$ergebnis = mysql_query($abfrage);
if(!$ergebnis) { echo "Fehler!"; }
while($row = mysql_fetch_object($ergebnis))
{
?>
<center>
<form action="debdetail.php?action=change" method=post>
<body bgcolor="3F75B7">
<table border="1" style="border-style=collapse" bordercolor="#000000" width="500">
<tr>
<td colspan="2" align="center">Debitorenkonten bearbeiten</td>
</tr>
<tr>
<td width="150" align="center">Kundennummer</td>
<td width="350" align="left"><? echo $row->id; ?></td>
</tr>
<tr>
<td width="150" align="center">Anmeldedatum</td>
<td width="350" align="left"><? echo $row->date; ?></td>
</tr>
<tr>
<td width="150" align="center">Bearbeiter</td>
<td width="350" align="left"><? echo $row->bearbeiter; ?></td>
</tr>
<tr>
<td width="150" align="center">Firma</td>
<td width="350" align="left">
<input type="text" name="firma" size="20" value="<? echo $row->firma; ?>"></td>
</tr>
<tr>
<td width="150" align="center">Vorname, Nachname</td>
<td width="350" align="left"><input type="text" name="vorname" size="20" value="<? echo $row->vorname; ?>"> <input type="text" name="nachname" size="20" value="<? echo $row->nachname; ?>"></td>
</tr>
<tr>
<td width="150" align="center">Zusatz</td>
<td width="350" align="left"><input type="text" name="zusatz" size="20" value="<? echo $row->zusatz; ?>"></td>
</tr>
<tr>
<td width="150" align="center">Ansprechpartner</td>
<td width="350" align="left"><input type="text" name="apartner" size="20" value="<? echo $row->apartner; ?>"></td>
</tr>
<tr>
<td width="150" align="center">Strasse, Nr</td>
<td width="350" align="left"><input type="text" name="strasse" size="20" value="<? echo $row->strasse; ?>"> <input type="text" name="nr" size="3" value="<? echo $row->nr; ?>"></td>
</tr>
<tr>
<td width="150" align="center">PLZ, Ort</td>
<td width="350" align="left"><input type="text" name="plz" size="5" value="<? echo $row->plz; ?>"> <input type="text" name="ort" size="20" value="<? echo $row->ort; ?>"></td>
</tr>
<tr>
<td width="150" align="center">Land</td>
<td width="350" align="left"><input type="text" name="land" size="20" value="<? echo $row->land; ?>"></td>
</tr>
<tr>
<td width="150" align="center">Telefon</td>
<td width="350" align="left"><input type="text" name="tel" size="20" value="<? echo $row->tel; ?>"></td>
</tr>
<tr>
<td width="150" align="center">Fax</td>
<td width="350" align="left"><input type="text" name="fax" size="20" value="<? echo $row->fax; ?>"></td>
</tr>
<tr>
<td width="150" align="center">eMail</td>
<td width="350" align="left"><input type="text" name="email" size="20" value="<? echo $row->email; ?>"></td>
</tr>
<tr>
<td colspan="2" width="500" align="center"><input type="submit" name="submit" value="Speichern"></form></td>
</tr>
</table>
</center>
<?
}
}
if($action =="change")
{
$result = mysql_query("update k_customer set firma = '$firma', vorname = '$vorname', nachname = '$nachname', zusatz = '$zusatz', apartner = '$apartner', strasse = '$strasse', nr = '$nr', plz = '$plz', ort = '$ort', land = '$land', tel = '$tel', fax = '$fax', email = '$email' WHERE id = '$id'") or die('Fehler '.mysql_error());
echo "Erfolgreich geändert!";
mysql_close($dbverbindung);
}
?>
----------------------------
[/quote]
GRÜN = KONTROLIERE DEINEN SYNTAX
ROT = MEINER MEINUNG NACH EINE FEHLER KORREKTUR
FRAGE: GEHT DAS NICHT SO...
IF (!($VARIABLE)) { echo "AUSGABE"; }
Kommentar
-
Also ich hab jetzt nochmal den Header rausgenommen (Session).
Geht leider immer noch nicht
Neuer Code:
Code:<?php include("dbconnect.php"); if(!$action) { if(!$id) { die("Keinen Kunden gewählt!"); } $abfrage = "SELECT * FROM k_customer WHERE id=".$id.""; $ergebnis = mysql_query($abfrage); if(!$ergebnis) { echo "Fehler!"; } while($row = mysql_fetch_object($ergebnis)) { ?> <center> <form action="debdetail.php?action=change" method=post> <body bgcolor="3F75B7"> <table border="1" style="border-style=collapse" bordercolor="#000000" width="500"> <tr> <td colspan="2" align="center">Debitorenkonten bearbeiten</td> </tr> <tr> <td width="150" align="center">Kundennummer</td> <td width="350" align="left"><? echo $row->id; ?></td> </tr> <tr> <td width="150" align="center">Anmeldedatum</td> <td width="350" align="left"><? echo $row->date; ?></td> </tr> <tr> <td width="150" align="center">Bearbeiter</td> <td width="350" align="left"><? echo $row->bearbeiter; ?></td> </tr> <tr> <td width="150" align="center">Firma</td> <td width="350" align="left"><input type="text" name="firma" size="20" value="<? echo $row->firma; ?>"></td> </tr> <tr> <td width="150" align="center">Vorname, Nachname</td> <td width="350" align="left"><input type="text" name="vorname" size="20" value="<? echo $row->vorname; ?>"> <input type="text" name="nachname" size="20" value="<? echo $row->nachname; ?>"></td> </tr> <tr> <td width="150" align="center">Zusatz</td> <td width="350" align="left"><input type="text" name="zusatz" size="20" value="<? echo $row->zusatz; ?>"></td> </tr> <tr> <td width="150" align="center">Ansprechpartner</td> <td width="350" align="left"><input type="text" name="apartner" size="20" value="<? echo $row->apartner; ?>"></td> </tr> <tr> <td width="150" align="center">Strasse, Nr</td> <td width="350" align="left"><input type="text" name="strasse" size="20" value="<? echo $row->strasse; ?>"> <input type="text" name="nr" size="3" value="<? echo $row->nr; ?>"></td> </tr> <tr> <td width="150" align="center">PLZ, Ort</td> <td width="350" align="left"><input type="text" name="plz" size="5" value="<? echo $row->plz; ?>"> <input type="text" name="ort" size="20" value="<? echo $row->ort; ?>"></td> </tr> <tr> <td width="150" align="center">Land</td> <td width="350" align="left"><input type="text" name="land" size="20" value="<? echo $row->land; ?>"></td> </tr> <tr> <td width="150" align="center">Telefon</td> <td width="350" align="left"><input type="text" name="tel" size="20" value="<? echo $row->tel; ?>"></td> </tr> <tr> <td width="150" align="center">Fax</td> <td width="350" align="left"><input type="text" name="fax" size="20" value="<? echo $row->fax; ?>"></td> </tr> <tr> <td width="150" align="center">eMail</td> <td width="350" align="left"><input type="text" name="email" size="20" value="<? echo $row->email; ?>"></td> </tr> <tr> <td colspan="2" width="500" align="center"><input type="submit" name="submit" value="Speichern"></form></td> </tr> </table> </center> <? } } if($action =="change") { $result = mysql_query("update k_customer set firma = '$firma', vorname = '$vorname', nachname = '$nachname', zusatz = '$zusatz', apartner = '$apartner', strasse = '$strasse', nr = '$nr', plz = '$plz', ort = '$ort', land = '$land', tel = '$tel', fax = '$fax', email = '$email' WHERE id = '$id'") or die('Fehler beim ändern des Eintrages! '.mysql_error()); echo "Erfolgreich geändert!"; mysql_close($dbverbindung); } ?>
Kommentar
-
Zitat von NordcomAlso ich hab jetzt nochmal den Header rausgenommen (Session).
Geht leider immer noch nicht
Du verwendest 'date' als Spaltenbezeichner, obwohl das ein reserviertes Wort ist.
ungetestet:
Code:<?php define ('NL', "\n"); # neue Zeile $tab = array ( # Tabellenspalten und Bezeichnungen 'id' => 'Kundennummer', 'date' => 'Anmeldedatum', 'bearbeiter' => 'Bearbeiter', 'firma' => 'Firma', 'vorname' => 'Vorname', 'nachname' => 'Nachname', 'zusatz' => 'Zusatz', 'apartner' => 'Ansprechpartner', 'strasse' => 'Strasse', 'plz' => 'PLZ', 'ort' => 'Ort', 'land' => 'Land', 'tel' => 'Telefon', 'fax' => 'Fax', 'email' => 'eMail', include("dbconnect.php"); # hier mußt Du noch mal nachgucken, ob dort schon Content ausgegeben wird! if(! isset($action)) { if(! isset($id)) { die("Keinen Kunden gewählt!"); } $sql = "SELECT * FROM k_customer WHERE id='".$id."'"; if (! $ergebnis = mysql_query($sql)) die('Fehler! sql=' . htmlentities($sql).<'br />' . mysql_error() ); while($row = mysql_fetch_object($ergebnis)) { # Ausgabe print '<center> ' . NL; printf('<form action="%s?%s=%s" method=post>' . NL, 'debdetail.php', 'action', 'change'); print '<body bgcolor="3F75B7">' . NL); print '<table border="1" style="border-style=collapse" bordercolor="#000000" width="500">' . NL); print '<tr> ' . NL; print ' <td colspan="2" align="center">Debitorenkonten bearbeiten</td> ' . NL; print '</tr> ' . NL; # Felder ausgeben foreach ($tab as $key => $val) { print '<tr> ' . NL; printf (' <td width="150" align="center">%s</td>' . NL, $val); printf (' <td width="350" align="left"><input type="text" name="%s" size="20" value="%s"></td> ' . NL, $key, htmlentities($row[$key]), ENT_QUOTES); print '</tr>' . NL; } print '<tr> .NL; print ' <td colspan="2" width="500" align="center"><input type="submit" name="submit" value="Speichern"></form></td> .NL; print '</tr> .NL; print '</table> .NL; print '</center>' .NL; # Formularende } } if ( isset($action) AND $action == 'change') { $sql = "update k_customer set '; @reset($tab); $set = array(); foreach ($tab as $key) { $set = '`' . $key .'`='. "'" . mysql_escape_string (${$key}) ."'"; } $sql .= implode (',' $set); $ sql .= ' WHERE id = '$id'"; $result = mysql_query($sql) or die('Fehler! sql=' . htmlentities($sql).<'br />' . mysql_error() ); echo "Erfolgreich geändert!"; } if ($dbverbindung) mysql_close($dbverbindung); ?>
Kommentar
Kommentar