Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
BLUTIGE (:D) mysql anfänger Fragen ;) [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
ebiz-webhosting
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
BLUTIGE (:D) mysql anfänger Fragen ;)


 
ChosenOne9999
11-10-2001, 15:46 
 
Also,ich brauch ma Hilfe(sonst wär ich ja nich hier ;) ):
Ich bin dabei ein GuestBook zu schreiben und will das ganze zeuch inne MySQL-DB speichern.ALso,meine Config-Datei sieht schonmal so aus:


<?

##### MySQL-Einstellungen #####
# Server
$mysqlserver = "localhost";

# Name
$mysqlname = "root";

# Passwort
$mysqlpass = "";

# DB-Name
$dbname = "xbook";

# Nichts ändern!
$db = mysql_connect("$mysqlserver", "$mysqlname", "$mysqlpass") or die ("Could not connect");
mysql_SELECT_DB("$dbname",$db);
...
?>
Von den Einstellungen stimmt ja schonmal alles.So,ich habe nun eine "post.php" Datei,worin man Namen($name),Subject($subject) und das posting($kommentar) eingeben kann.Dann klickt man auf Abschicken uind man wird zu einer "posting.php" weitergeleitet.Darin soll das verarbeitet und gespeichert werden.Die Datei sieht so aus:

[PHP]
<?
require "config.inc.php";
require "$tempp/post.php";
require "$tempp/css.php";
require "$tempp/posting.php";
echo "$css";

mysql_query("INSERT INTO posts VALUES ('$name','$subject','$kommentar')");

echo "$posting";
echo "<br>Das haben sie eingetippt:
Ihr Name: $name
Ihr Subject: $subject
Ihr Kommentar: $kommentar";
?>

"posts" ist meine Table in der DB "XBook".Wenn ich allerdings im Explorer die Datei "posts.MYD" öffne,ist sie leer,d.h. es ist nichts reingeschrieben worden.Wie schaff ich das,dass da was reingeschrieben wird,zumal der untere Part ("das haben sie eingetippt...") funktioniert.Bitte um Hilfe.

 
ChosenOne9999
11-10-2001, 23:06 
 
Kann mir denn keiner helfen?

 
schmalle
12-10-2001, 14:56 
 
doh können wir :D ... wir sind nur nicht so schnell :D :D



mysql_query("INSERT INTO posts VALUES ('$name','$subject','$kommentar')");



da ist der fehler drin meine ich. denn ich gehe mal davon aus, dass du für "name" "betreff" und "kommentar" jeweils eine spalte in der datenbank angelegt hast. dann musst du dem script auch sagen, wo es was hinschreiben soll...

z.B. so:



mysql_query("INSERT INTO posts set spalte_name='$name', spalte_subject='$subject', spalte_kommentar='$kommentar'");

 
ChosenOne9999
12-10-2001, 15:26 
 
So hab ich die Table angelegt:

mysql_query("CREATE TABLE posts (
ID int(5) DEFAULT '0' NOT NULL auto_increment,
TopicID int(5) DEFAULT '0' NOT NULL,
Subject int(5) DEFAULT '0' NOT NULL,
Name varchar(50) NOT NULL,
Email varchar(50) NOT NULL,
Password varchar(50) NOT NULL,
TimeStamp varchar(10) NOT NULL,
Post text NOT NULL,
PRIMARY KEY (ID)
);") or die(mysql_error());
echo "Table \"posts\" wurde erstellt!";

Da sind zwar einige Sachen nutzlos,denn ich hab einfach nur gecopy&pastet und die Namen ausgetauscht.Danke für die Hilfe nochmal :)

P.S.:
Bin es vom Diablo2.de Forum gewoht,wo immer 350User gleichzeitig online sind,das die Antworten sofort kommen ;)

 
kopfkult
12-10-2001, 15:53 
 
So sollte es wohl gehen, mit deinen script !!

mysql_query("INSERT INTO posts(name, subject, kommentar)
VALUES('$name','$subject','$kommentar')");

du hast vergessen ihm zu sagen, wo er die variablen hinschreiben soll !
natürlich solltest du die tablle auch dementsprechend angelegt haben. ;-)

tschö stefan

 
schmalle
12-10-2001, 16:05 
 
@kopfkult --- erst lesen, dann posten!

mein code war schon richtig! und vor allem einfacher der salat mit den "values" ... da findet man etwaige fehler nämlich erst nach stunden der suche :D ...

wie die spalten heissen, wusste ich schliesslich noch nicht ...

 
kopfkult
12-10-2001, 16:10 
 
naja ich bin bei deinem script nicht so ganz durchgestiegen !!
deshalb hab ich nochmal gepostet !

aber sorry wenn man dan was falsch macht !!!!

 
ChosenOne9999
12-10-2001, 16:59 
 
Also ich habe Kopfkults Script besser verstanden,is aber wirklich fast das gleiche ;)

 
Titus
13-10-2001, 14:00 
 
naja, wenn man mal davon absieht, dass schmalle´s Version nur unter mySQL funktioniert. In anderen SQL-Sprachen wird er damit auf die Schnüss fallen.

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:40 Uhr.