kleine einführung in mysql mit php?

  • Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!
Status
Für weitere Antworten geschlossen.

Fätzminator

Neues Mitglied
17 April 2005
1.800
0
0
www.marc-server.ch.vu
kleine einführung in mysql mit php?

hallo zusammen

kann mir jemand ne kleine einführung drüber geben, wie man tabellen in mysql datenbanken erstellen und verändern kann und dann mit php reinschreiben und auslesen kann?

mfg, fätzminator

PS: ein guter link würde mir schon vollkommen reichen :wink:
 

Easy-Web

Neues Mitglied
5 März 2005
180
0
0
Fätzminator extra für dich nochmals
das A&O für MYSQL. hone diese angaben(hilfe) kommst du nicht weit

OK da noch die angaben

Zahlen
Tinyint -128 bis 127
Smallint -32768 bis 32767
Mediumint -8388608 bis 8388607
Int -2147483648 bis 2147483647
Bigint -922337206854775808 bis 9223372036854775807


Fliesskommazahlen
Float
Decimal
Double (10.2) erste zahl:Max länge vor "." zweite zahl: nach "." stellen


Text
Varchar(255) Bis zu 255 zeichen (die zahl in Klammern ist für Max reservierte zeichen )
Char(255) Dito Varchar
Text hat sozusagen unendlich platz
Blob wird auf GROSS/klein schreibweise geachtet (z.b beim suchen)


Zeit Datum (muss ich ja nicht viel dazu sagen)
Time hh:mm:ss
Date yyyy-mm-dd
Datetime yyyy-mm-dd hh:mm:ss

NOT NULL das der wert in der Datenbank stehen muss (sonst gib es fehlermeldung Mit den Augen rollen )
Deflaut (Fals kein wert eingetragen wird oder möchte wie auch immer, kann man ein DEFLAUT wert definieren. Dies ist ein vordefinierter standart wert
Auto_imcerment fortlaufente nummerierung

Mit diesen angaben kann jeder SQL newbie arbeiten

ach ja, den Primärschlüssel nicht vergessen...
 

zacken200

Neues Mitglied
10 Juni 2005
3
0
0
www.html-help.de.tc
hi...

suche auch einführungen in MySQL mit PHP... aber di o.g. Seiten haben mir bis jetzt nicht viel weiter geholfen... hätte hier noch jemand ne paar Links?!? :D



zacken200
 

Easy-Web

Neues Mitglied
5 März 2005
180
0
0
was suchst du dan genau? anleitubngen findet man in fast jeder guten php-lern seite
mein artickel beruht nur auf SQL... sprich, wenn du in PHPMYADMIN benutzt(oder andere SQL programme...
 

Easy-Web

Neues Mitglied
5 März 2005
180
0
0
LESEN, DENKEN, NOCHMALS LESEN, NOCHMALS DENKEN UND UMSETZEN
und immer schön denken bei der dache...

sonst findest du wirklich in jeder seite ne anleitung... habe auf anhib was gefunden:twisted: :roll:
Code:
PHP bietet Funktionen für die Zusammenarbeit mit MySQL.
Ein Datenbankzugriff von PHP aus setzt sich zusammen aus:

    * Verbindungsaufbau
    * SQL-Anfrage
    * dem Abholen der Daten
    * Verbindungsabbau [optional]

Die wichtigsten Funktionen dafür sind:
 
mysql_connect 	Verbindungsaufbau zum MySQL-Server
mysql_select_db 	Auswahl der Datenbank
mysql_query 	Ausführen der SQL-Anfrage
mysql_num_rows 	Anzahl der gefundenen Datensätze (bei SELECT)
mysql_num_fields 	Anzahl der Felder (bei SELECT)
mysql_affected_rows 	Anzahl der betroffenen Felder (bei DELETE/UPDATE)
mysql_fetch_row 	Liefert einen Datensatz als indiziertes Array
mysql_fetch_array 	Liefert einen Datensatz als assoziatives Array
mysql_fetch_object 	Liefert einen Datensatz als Objekt
mysql_close 	Schließt die Verbindung zum Server

Eine typisch Datenbank-Abfrage sieht mit PHP und MySQL so aus:

$config[dbserver]  = "localhost";      // Konfigurationsdaten werden in einem Array gespeichert

$config[dbname]    = "test";           // dadurch können sie einfacher geändert werden, da der

$config[dbuser]    = "user";           // restliche Code nicht nach ihnen durchsucht werden muß

$config[dbpassword]= "geheim";



// 1. Datenbankverbindung aufbauen

$conn = @mysql_connect($config[dbserver], $config[dbuser],$config[dbpassword]);

$result = mysql_select_db($config[dbname]);



// 2. SQL Anfrage ausführen

$sql    = "SELECT * FROM kunden";

$result = mysql_query ($sql);



// Wieviel wurde gefunden?

$rows = mysql_num_rows($result);



// 3. Daten auslesen

for ($i=0;$i<$rows;$i++)                 // Die Ergebnisdatensätze werden in einer Schleife abgeholt

  {

  $data = mysql_fetch_object ($result);

  print "Kundennr = $data->kundennr";

  print "Name     = $data->name";

  }


Man beachte den letzten Teil, in dem die Daten ausgelesen werden: Die Ergebnisse werden nicht als ganzes übergeben, sondern müssen Datensatz für Datensatz ausgelesen werden. Mit mysql_num_rows erhält man die Anzahl der Ergebnisse, die für die for-Schleife benötigt werden.
Ich empfehle mysql_fetch_object oder mysql_fetch_array zu benutzen, so kann über die Feldnamen auf die Werte zugegriffen werden kann:
Bei mysql_fetch_object über $ergebniskennung->feldname,
bei mysql_fetch_array über $ergebniskennung["feldname"]

In der for-Schleife werden die Ergebnisse dann verarbeitet. Falls sehr viele Anweisungen nötig sind, können sie auch an andere Funktionen übergeben werden.

Es kann außerdem zweckmäßig sein, einen Teil dieses Grundgerüsts in eine Funktion oder Klasse auszulagern. Z. B.


// Auslagerung in eine Funktion



function mysql_frage($datenbank, $sql)

{

  $config[dbserver]  = "localhost";

  $config[dbname]    = $datenbank;

  $config[dbuser]    = "user";

  $config[dbpassword]= "geheim";



  $conn = @mysql_connect($config[dbserver], $config[dbuser],$config[dbpassword]);

  $result = mysql_select_db($config[dbname]);



  $result = mysql_query ($sql);



  return $result;

}



$ergebnis = mysql_frage("mydb", "SELECT tiername FROM haustier");

for($i=0; $i<=$mysql_num_rows($ergebnis); $i++)

{

  $datensatz = mysql_fetch_object($ergebnis);

  echo $datensatz->tiername;

}







// Auslagerung in eine Klasse



class Datenbank

{

      var $db_name;

      var $db_host;

      var $db_user;

      var $db_passwort;



      function Datenbank()    // Konstruktor

      {

      $this->dbhost = "host";

      $this->dbuser = "user";

      $this->dbpasswort = "geheim";

      }



      function frage($sql)

      {

      $conn = @mysql_connect($this->dbhost, $this->dbuser, $this->dbpasswort);

      $result = mysql_select_db($this->dbname);



      $result = mysql_query ($sql);

      return $result;

      }

}



$haustiere = new Datenbank;

$haustiere->db_name = "haustier";



$ergebnis = $haustiere->frage("SELECT tiername FROM haustier");

for($i=0; $i<=$mysql_num_rows($ergebnis); $i++)

{

  $datensatz = mysql_fetch_object($ergebnis);

  echo $datensatz->tiername;

}




Vorteil der Auslagerung in eine Klasse ist, daß sie um weitere Funktionen ergänzt werden kann, z. B. um die Ergebnisse gleich in einer bestimmten Art auszugeben.

Falls diese Funktionen in mehreren Skript-Dateien benötigt werden, sollten sie in eine eigene Datei ausgelagert werden, ebenso wie die Zugangsdaten, um dann am besten über include_once() eingebunden zu werden.

Natürlich kann man mit mysql_query nicht nur Suchabfragen machen, sondern jeden Befehl an MySQL schicken, also z. B. auch zum Löschen oder Ändern von Datensätzen.
 

Easy-Web

Neues Mitglied
5 März 2005
180
0
0
und sonst bearbeiten mit myphpadmin.... das basiert auf PHP scripte.... ein SQL kontroll programm....
ansonsten must du was coden wo ähnlich ist :mrgreen:
 

zacken200

Neues Mitglied
10 Juni 2005
3
0
0
www.html-help.de.tc
danke, danke, danke.... danke das es noch menschen für meine dummheit gibt :lol: so gut wärs, wenn du noch den link dazu geschrieben hättest, wo du dies gefunden hast
 

Mansoor

Neues Mitglied
20 Juni 2005
5
0
0
www.mansoor.net.tc
Warum erstellt er mir keine Tabelle in meiner Datenbank? Er connectet mit der DB aber wenn er ne Tabelle erstellen will, kommt folgender Fehler:

Parse error: parse error, unexpected T_STRING in /home/www/htdocs/nukesoft.de/download_server/test/mysql.php on line 30


Code:
<?php
echo get_cfg_var("mysql.default_password");

$mysqltest = mysql_connect ( "localhost", "derdbname", "passwort" );


If (! $mysqltest )
{
echo "Keine Verbindung zum Datenbank";
die;
}



// Datenbank connect
$db = "derdbname";
mysql_select_db( $db);


If (! mysql_select_db("derdbname") )
{
echo "Konnte DB nicht auswahlen" . mysql_error();
die;
}     



// Tabelle erstellen
// !!! Hier kommt der oben genannte Fehler !!! Warum ";"?
CREATE TABLE meinetabelle
(
    ID     INT AUTO_INCREMENT PRIMARY KEY,
    Titel  VARCHAR(60),
    Inhalt TEXT,
    Datum  DATETIME,
    Autor  VARCHAR(15)
);
                


?>

THx for Help!

Bye and have a nice day!
 
Status
Für weitere Antworten geschlossen.
Werbung: