DB Eintrag ned

PHP-Fan

Erfahrenes Mitglied
formular

PHP:
<?php
include ("checkuser.php");
?>

<html>
<head>
<title></title>
</head>
<body bgcolor="#272727">
<LINK href="style.css" type=text/css rel=stylesheet>

<font size="1" face="Verdana" color="#FFFFFF">
<b><u>:: Link hinzufügen ::</u></b>
<br>
<br>

<form action="pics_add_made.php" method=post>

<table witdh="300">

<tr>
<td width="50%" <font size="1" face="Verdana">URL:</td>
<td width="50%" <font size="1" face="Verdana"><input type="text" name="url" size="25"></td>
</tr>

<tr>
<td width="50%" <font size="1" face="Verdana">Linkname:</td>
<td width="50%" <font size="1" face="Verdana"><input type="text" name="linkname" size="25"></td>
</tr>


<tr>
<td width="50%" <font size="1" face="Verdana">Gruppe:</td>
<td width="50%" <font size="1" face="Verdana"><?php

$host = "localhost";
$user = "-";
$password = "-";
$dbname = "-";
$tabelle ="pp_groups";

$dbverbindung = mysql_connect ($host, $user, $password);

$dbanfrage = "SELECT * from $tabelle ";
$result = mysql_db_query ($dbname, $dbanfrage, $dbverbindung);

 while ($ausgabe = mysql_fetch_array ($result))
 {
  print ("<select name='groups'>
          <option value='$ausgabe[id]'>$ausgabe[groups]</option><br>");
 }

mysql_close ($dbverbindung)


?></td>
</tr>

</table>

<br>
<input type=submit name="hinzufügen" value="Link hinzufügen">

<br>
<br>
<center>
[ <a href="intern.php">Zurück</a> ]<br>
<br>
&copy; Copyright 2002-2005 by <a href="http://www.fortunafan.com" target="_blank"><b>FortunaFan Designs & Coding GmbH</a></b> - Alle Rechte vorbehalten

</body>
</html>

verarbeitung

PHP:
<html>
<head>
<title>Daten verarbeiten</title>
</head>
<body>

<?php

$host = "localhost";
$user = "-";
$password = "-";
$dbname = "-";
$tabelle ="pp_pics";

$dbverbindung = mysql_connect ($host, $user, $password);

$url = $_POST['url'];
$linkname = $_POST['linkname'];
$groups = $_POST['groups'];

$dbabfrage = "INSERT INTO $tabelle (url, linkname, groups) VALUES ('$url', '$linkname', '$groups')";

echo $dbabfrage;

if (mysql_db_query ($dbname, $dbanfrage, $dbverbindung)) {
print ("Datenbankeintrag erfolgreich.");
} else {
print ("Es traten Probleme auf.");
}
mysql_close ($dbverbindung);

?>

</body>
</html>

Fehlerneldung:

INSERT INTO pp_pics (url, linkname, groups) VALUES ('http://', 'test23', '2')Es traten Probleme auf.

Was habe ich falsch gemacht?
 
Tausch mal
$dbverbindung = mysql_connect ($host, $user, $password);
durch
dbverbindung = mysql_connect ($host, $user, $password) or die(mysql_error());
und
print ("Es traten Probleme auf.");
durch
print ("Es traten Probleme auf.");
echo "<br>".mysql_error();
aus
 
PHP:
<html> 
<head> 
<title>Daten verarbeiten</title> 
</head> 
<body> 
 
<?php 
 
$host = "localhost"; 
$user = "-"; 
$password = "-"; 
$dbname = "-"; 
$tabelle ="pp_pics"; 
 
$dbverbindung = mysql_connect ($host, $user, $password); 
 
$url = $_POST['url']; 
$linkname = $_POST['linkname']; 
$groups = $_POST['groups']; 
 
$dbabfrage = "INSERT INTO $tabelle (url, linkname, groups) VALUES ('$url', '$linkname', '$groups')";
$dbabfrage = mysql_query($dbabfrage);
 
if (!empty($dbabfrage)) { 
print ("Datenbankeintrag erfolgreich."); 
} else { 
print ("Es traten Probleme auf."); 
} 
mysql_close ($dbverbindung); 
 
?> 
 
</body> 
</html>
 
PHP-Fan hat gesagt.:
method=post
<option value='$ausgabe[id]'>$ausgabe[groups]</option>
<input type=submit name="hinzufügen" value="Link hinzufügen">
Um nur ein paar schlechte Codestellen zu nennen.

Strings gehören als solche gekennzeichnet.
Umlaute sollten in HTML-Code geschrieben werden und in GET-Variablen gar nicht auftauchen.
Und und und...
Also
PHP:
method="post"
<option value='$ausgabe["id"]'>$ausgabe["groups"]</option> // Sonst sind das Konstanten
<input type=submit name="hinzufuegen" value="Link hinzuf&uuml;gen">
 
Zurück