Datenbank ertsllen - Wo ist der Fehler?

datenbank erstellen:

[PHP]error_reporting(E_ALL);
include ‚…/inc/config.php‘;
// Konfigurationsdatei laden
@mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR die(mysql_error());
$sql CREATE DATABASE News ;[/PHP]
Ist das denn falsch?
Bzw. wo, geht nämlich nicht!

[PHP]
error_reporting(E_ALL);
include ‚…/inc/config.php‘;
// Konfigurationsdatei laden
@mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR die(mysql_error());
$sql = "CREATE DATABASE News ";
mysql_query($sql) or die(mysql_error());
[/PHP]

#php/QuakeNet Tutorial - MySQL / Abfragen

Gut danke, so, habe dieconfig-datei so gemacht das es localhost ist usw. nur leider sehe ich jetzt nciht in phpmyadmin, diese erstelle News-Tabelle!

Woran liegt das?

Marcel

das ist auch keine tabelle sondern eine datenbank, wo du jetzt tabellen 'reinmachen kannst.

Nils aka XraYSoLo

Wenn du phpMyAdmin hast, wieso versuchst du dann per Hand eine Tabelle / Datenbank zu erstellen?

XraYSoLo: das ist auch keine tabelle sondern eine datenbank, wo du jetzt tabellen 'reinmachen kannst.

Meinte Ja datenbank!

Commodore: Wenn du phpMyAdmin hast, wieso versuchst du dann per Hand eine Tabelle / Datenbank zu erstellen?

Weil ich es nciht auf dem Server habe!

marcel

Edit//
Es geht, so muss mich jetzt schlau machen wie ich diese datenbank eie Tabelle mache ^^

Greez Marcel

Habe mich nochmal hingesetzt, aber es geht irgendwie nicht!

[php]

<?php error_reporting(E_ALL); include '../inc/config.php'; // Konfigurationsdatei laden @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR die(mysql_error()); $sql = "CREATE DATABASE `Verein` "; mysql_query($sql) or die(mysql_error()); CREATE TABLE IF NOT EXISTS `News` { `ID` INT AUTO_INCREMENT PRIMARY KEY, `Titel` VARCHAR(30), `Autor` VARCHAR(30), `Email` VARCHAR(30), `Hmepage` VARCHAR(30), `Inhalt` TEXT, `Datum` DATETIME } ?>

[/php]

Kann mir jemand diesen Code berichtigen?

Marcel

Du musst das schon in ne Abfrage (Query) packen, sonst gehts nicht.
[php]<?php $qry = ' CREATE TABLE IF NOT EXISTS `News` ( `ID` INT AUTO_INCREMENT PRIMARY KEY, `Titel` VARCHAR(30), `Autor` VARCHAR(30), `Email` VARCHAR(30), `Hmepage` VARCHAR(30), `Inhalt` TEXT, `Datum` DATETIME ); '; mysql_query($qry) OR die(mysql_error()); ?>[/php]

Du musst aber nicht bei jedem mal eine neue Datenbank anlegen, das machst du nur einmal :wink:

da bringt er das!

You have an error in your SQL syntax near '; ' at line 10

muss ich bestimmt was machen wegen der Klammer oder
Zeile 9,10,11 bei mir!

[php]$qry = ’
CREATE TABLE IF NOT EXISTS News (
ID INT AUTO_INCREMENT PRIMARY KEY,[/php]

Weiss ich, aber muss es ja testen wegen Server teste zur zeit alles auf local!

Es geht um Zeile 10 in der Abfrage ( „);“ ). Nimm das ‚;‘ da raus, das is mir da wohl versehentlich „reingerutscht“ :wink:

Jap habe ich auch gerade gesehen! :frowning:

No Database Selected

marcel

[php]@mysql_select_db(‚Verein‘) OR die(‚Kann keine Verbindung zur Datenbank herstellen‘);[/php]

Yes dankeschön!

Und wenn ich jetzt extern aus einemFormular was in diese schreiben will, muss ich das auch davor setzen oder?

Wenn ich mich nicht arg täusche muss immer wenn auf die Datenbank zugegriffen werden soll vorher mysql_connect() und mysql_select_db() ausgeführt werden, ja.

Ja, immer wenn du irgendwas in eine Tabelle ein / auslesen moechtest, musst du die Database auswaehlen.

#php/QuakeNet Tutorial - MySQL / Verbindung

/e: Musst du so kompetent sein? -.-

;ugl

Warum wird das doppelt in die Datenbank eingeschrieben?

[PHP]<?php
include(‚…/inc/config.php‘);

@mysql_select_db(‚Verein‘) OR die(‚Keine Verbindung‘);

$Titel=$_POST[„Titel“];
$Autor=$_POST[„Autor“];
$Homepage=$_POST[„Homepage“];
$Email=$_POST[„Email“];
$Inhalt=$_POST[„Inhalt“];

$eintrag=„INSERT INTO news (Titel,Autor,Email,Hoempage,Inhalt) VALUES`‚$Titel‘,‚$Autor‘,‚$Email‘,‚$Homepage‘,‚$Inhalt‘)“;

$eintragen = mysql_query($eintrag);
mysql_query($eintrag) OR die(mysql_error());
?>[/PHP]

Marcel

Weil du den Query zweimal abschickst:

[php]//Falsch:
$eintragen = mysql_query($eintrag);
mysql_query($eintrag) OR die(mysql_error());

//Richtig:
$eintrage = mysql_query($eintrag) OR die(mysql_error());[/php]

btw: Lern am besten direkt deine Querys ordentlich einzuruecken:
[php]$qry = "INSERT INTO news
(Titel,
Autor,
Email,
Hoempage,
Inhalt)
VALUES
(‚$Titel‘,
‚$Autor‘,
‚$Email‘,
‚$Homepage‘,
‚$Inhalt‘)[/php]
:arrow: #php/QuakeNet Tutorial - MySQL-Querys einrücken

Und wenn du Usereingaben in eine DB schreibst, dann immer [phpnet]mysql_real_escape_string[/phpnet] benutzen :!: