PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks. |
 |

15-12-2006, 00:42
|
Trashkiller
Banned
|
|
Registriert seit: Dec 2006
Beiträge: 30
|
|
PHP ERROR beim schreiben in DB
Hallo.
Ich habe ein Problem, beim schreib in meine MySQL DB.
Ich habe schon in der Foren Suche (auch in anderen Boards)
gesucht, bin teilweile auch fündig geworden, aber irgendwie will
nix so richtig klappen.
Hier mal die Seite zum Anfang:
<html><style type="text/css">
<!--
body,td,th {
color: #FFFFFF;
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: x-small;
}
body {
background-color: #000000;
}
a:link {
color: #FFFFFF;
font-weight: bold;
text-decoration: none;
}
a:visited {
text-decoration: none;
color: #FFFFFF;
}
a:hover {
text-decoration: none;
color: #00FF00;
}
a:active {
text-decoration: none;
color: #00FF00;
}
-->
</style>
<body>
<br>
<form id="neuer_user" method="post" action="<?php $_SERVER['PHP_SELF'] ?>">
<table width="400" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="left" valign="middle">Kategorie:</td>
<td align="left" valign="middle"><p>
<input name="catid" type="text" id="catid" size="1" maxlength="2" />
bitte gib die Nummer der Kategorie ein, in welche du etwas hinzufügen möchtest: Moviez (11), Serien (10), Gamez (12), Music (2), Appz (3), eBookz (9) </p></td>
</tr>
<tr>
<td width="130" align="left" valign="middle">Titel:</td>
<td width="270" align="left" valign="middle"><input name="topic" type="text" id="topic" /></td>
</tr>
<tr>
<td align="left" valign="middle">Passwort:</td>
<td align="left" valign="middle"><input name="subtopic" type="text" id="subtopic" /></td>
</tr>
<tr>
<td align="left" valign="middle">Link:</td>
<td align="left" valign="middle"><input name="link1" type="text" id="link1" /></td>
</tr>
<tr>
<td align="left" valign="middle">Beschreibung:</td>
<td align="left" valign="middle"><textarea name="text" cols="30" rows="5" id="text"></textarea></td>
</tr>
<tr>
<td align="left" valign="middle">Dein Nickname: </td>
<td align="left" valign="middle"><input name="link2" type="text" id="link2" /></td>
</tr>
<tr>
<td align="left" valign="middle">Deine eMail: </td>
<td align="left" valign="middle"><input name="link3" type="text" id="link3" /></td>
</tr>
</table>
<br>
<input type="submit" name="Submit" value="Registrieren" />
</form>
<?php
if($_POST['catid']!="" && $_POST['topic']!="" && $_POST['subtopic']!=""
&& $_POST['link1']!="" && $_POST['link2']!="" && $_POST['link3']!="") {
$catid = $_POST["catid"];
$topic = $_POST["topic"];
$subtopic = $_POST["subtopic"];
$link1 = $_POST["link1"];
$text = $_POST["text"];
$link2 = $_POST["link2"];
$link3 = $_POST["link3"];
require("connect.php");
mysql_query("INSERT INTO `tabellenname` (`catid`, `topic`, `subtopic`, `link1`, `text`, `link2`, `link3`) VALUES ('$catid', '$topic', '$subtopic', '$link1', '$text', '$link2', '$link3')") or die(ERROR);
echo "<b><font color='#00FF00'>Dein Download wurde erfolgreich eingetragen <br>und ist nun auf der Seite verfügbar!</font></b>";
}
?>
</body></html>
Meine Datenbank sieht so aus... jedenfalls die Reihenfolge der Spalten:
Textos completos - id - catid - userid - ext_user - ext_mail - topic - subtopic - text - link1 - link2 - link3 - time - pubtime - endtime - pin - allowcoms - allowvote - hot - counter
Untergeordnet sind dann logischerweise die Zeilen.
Wenn ich nun die PHP File mit meinem Browser aufrufe,
passiert noch garnix, d.h. es läuft alles gut.
Wenn ich dann alles ausgefüllt habe und auf Bestätigen klicke, kommt ERROR. Höchstwahrscheinlich aus dieser Zeile:
mysql_query("INSERT INTO `tabellenname` (`catid`, `topic`, `subtopic`, `link1`, `text`, `link2`, `link3`) VALUES ('$catid', '$topic', '$subtopic', '$link1', '$text', '$link2', '$link3')") or die(ERROR);
Ich weiss aber leider nicht warum und wie ich das Problem beheben kann. Ich hoffe sehr mir kann da jemand weiterhelfen.
Danke und mfg, Trashkiller!
PS: die connect.php zum verbinden zur db stimmt auf jeden fall!!!
Geändert von Trashkiller (15-12-2006 um 01:18 Uhr)
|

15-12-2006, 00:48
|
jahlives
Master  
|
|
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
|
|
Code umbrechen. Ich mag nicht nach rechts scrollen.
Vllt noch das probieren
PHP-Code:
mysql_query('...') OR die(mysql_error());
MySql wird dir ziemlich genau sagen, was ihm nicht passt.
Und mach die auch mal über sql-injections bei der SuMa deiner Wahl schlau.
Gruss
tobi
p.s. du weisst schon dass nach html normalerweise head kommt ?
|

15-12-2006, 01:18
|
Trashkiller
Banned
|
|
Registriert seit: Dec 2006
Beiträge: 30
|
|
so habe mal OR die(mysql_error()); reingehaun
und da sagt er: Unknown column 'catid' in 'field list'
aba diese spalte existiert 100pro in der db?
catid int(11) No 1
so stehts in der datenbank
oder heisst das was anderes o_O
PS: ähm es sind ja zwischen den einzelnen im script angegebenen spalten noch weitere spalten vorhanden die allerdings in diesem fall nicht gebraucht werden. die muss ich doch net mit auflisten wenn ich es so mache oder? letztendlich definiere ich doch zuerst die spalten die editiert werden und dannach definiere ich was wie editiert werden soll oder?
Geändert von Trashkiller (15-12-2006 um 01:20 Uhr)
|

15-12-2006, 01:30
|
Griecherus
PHP Senior
|
|
Registriert seit: May 2005
Ort: Berlin
Beiträge: 1.036
|
|
Schau mal in der Tabelle nach, ob sich im Spaltennamen catid möglicherweise ein Leerzeichen ans Ende geschmuggelt hat (catid_, _ steht für das Leerzeichen), das könnte dein Problem auslösen.
|

15-12-2006, 01:44
|
Trashkiller
Banned
|
|
Registriert seit: Dec 2006
Beiträge: 30
|
|
ne leider net 
steht nur cadid
ohne " " oder "_"
|

15-12-2006, 01:47
|
Griecherus
PHP Senior
|
|
Registriert seit: May 2005
Ort: Berlin
Beiträge: 1.036
|
|
Zitat:
Original geschrieben von Trashkiller
ne leider net 
steht nur cadid
ohne " " oder "_"
|
Ist das ein Schreibfehler oder steht tatsächlich cadid in der Tabelle?
|

15-12-2006, 08:23
|
hhcm
PHP Senior
|
|
Registriert seit: Jun 2005
Ort: Viersen, NRW
Beiträge: 1.833
|
|
Was steht denn in der Connect.php und ist `tabellenname` geändert oder gewollt?
__________________
gruss Chris
Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."
|

15-12-2006, 15:05
|
Trashkiller
Banned
|
|
Registriert seit: Dec 2006
Beiträge: 30
|
|
in der connect.php steht folgendes:
<?php
$mysqlhost="xxx";
$mysqluser="xxx";
$mysqlpwd="xxx";
$mysqldb="xxx";
$connection=mysql_connect($mysqlhost, $mysqluser, $mysqlpwd) or die("Es konnte keine Verbindung zur Datenbank hergestellt werden.");
mysql_select_db($mysqldb, $connection) or die("Datenbank wurde nicht gefunden.");
?>
`tabellenname` is geändert ... also in der datei von mir steht logischerweise der richtige name der tabelle
achso und die spalt heisst "catid"
das steht euch überall in der php so drin
war also ein tippfehler meinerseits
|

15-12-2006, 16:39
|
hhcm
PHP Senior
|
|
Registriert seit: Jun 2005
Ort: Viersen, NRW
Beiträge: 1.833
|
|
Poste doch mal die Ausgabe von
PHP-Code:
echo "<pre>";
$res = mysql_query("describe `tabellenname`") or die(mysql_error());
while ($row=mysql_fetch_assoc($res))
print_r($row);
echo "</pre>";
__________________
gruss Chris
Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."
|

15-12-2006, 17:15
|
Trashkiller
Banned
|
|
Registriert seit: Dec 2006
Beiträge: 30
|
|
wo soll ich das hinschreiben?
wenn ichs hierhin schreibe:
mysql_query("INSERT INTO `xxxxx` (`catid`, `topic`, `subtopic`, `link1`, `text`, `link2`, `link3`) VALUES ('$catid', '$topic', '$subtopic', '$link1', '$text', '$link2', '$link3')") or die(mysql_error());
echo "<b><font color='#00FF00'>Dein Download wurde erfolgreich eingetragen <br>und ist nun auf der Seite verfügbar!</font></b>";
echo "<pre>";
$res = mysql_query("describe `xxxxxx`") or die(mysql_error());
while ($row=mysql_fetch_assoc($res))
print_r($row);
echo "</pre>";
}
?>
kommt der selber fehler wie immer. (Unknown column 'catid' in 'field list')
wenn ichs wo anders hinschreibe meckert er ständig rum
das keine mysql verbindung hergestellt werden konnte
in diesen fällen habe ichs aba meisten vor den require befehl gesetzt
|

15-12-2006, 19:25
|
Trashkiller
Banned
|
|
Registriert seit: Dec 2006
Beiträge: 30
|
|
vergesst es
ich noobi noob n4pi nub habe die falsche tabelle angegeben ich depp -.-
thx und mfg
|

16-12-2006, 09:55
|
hhcm
PHP Senior
|
|
Registriert seit: Jun 2005
Ort: Viersen, NRW
Beiträge: 1.833
|
|
Das wollte ich mit meinem Code ausschliessen.
__________________
gruss Chris
Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Thema bewerten |
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|