Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] MySQL Schritt für Schritt

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] MySQL Schritt für Schritt

    So

    nach langem suchen hab ichs endlich geschafft nen kostenlosen Webspaceanbieter der auch MySQL unterstütz zu finden. =)

    Nun will ich mich mal an das Gebiet MySQL heranwagen und das mit eurer Hilfe ^^

    Also, wenn ich mich jetzt nun auf der phpMyAdmin 2.5.6. Seite bin, steht da Neue Tabelle in Datenbank billy erstellen:

    dann steht

    Name: [Input BOX]
    Felder: [Input BOX]

    Ich gebe bei Name mal zum anfangen test und ein bei Felder 3. Bis dahin noch ganz locker =)

    Und nun kommt mein erstes Problem. Ich muss zu jedem Feld Verschiedene Sachen zuweisen.

    Feld | Typ | Länge/Set | Attribute | Null | Standard | Extra | Primärschlüssel | Index | Unique | --- | Volltext

    Nun frage an Euch: Was bedeuten die verschieden sachen? und wie muss ich was einstellen dass ich meine 3 Felder(Name, Alter und Wohnort) richtig eintrag kann???

    Danke für die Hilfe bereits im Vorraus ^^

    Billy

  • #2
    also 1. ist es meistens am anfang:

    Server:localhost
    Database:mysql
    Benutzername: root
    Password:
    (ist leer)

    2.und schau dir mal die site an
    http://www.free.host.de.vu

    MFG [GBA] Killer200.4

    Kommentar


    • #3
      öhm ja

      aber das nützt mir im moment noch nichts... ich muss ja zuerst einmal die Felder ausfüllen...

      Kommentar


      • #4
        Dort am besten mal durchlesen und wenn noch fragen aufkommen dann stellen.

        http://www.schattenbaum.net/php/mstart.php

        Der günstigste mysql server zum testen ist der Home server einfach folgedes paket installieren dann hat man kein problem mit dem dauerhaften upload

        http://www.apachefriends.org/de/xampp-windows.html



        mfg

        Kommentar


        • #5
          @nilsfeld kannste dir das mal bitte anschaun:
          http://www.phpfriend.de/forum/viewtopic.php?t=15457

          Kommentar


          • #6
            Zitat von Billy
            öhm ja

            aber das nützt mir im moment noch nichts... ich muss ja zuerst einmal die Felder ausfüllen...
            also ich hab das genau so gemacht wie du und hab mich auch gewundert,in dem ornder Mysql unter Data sind schon tabellen drin,also lad dir ein script runter und stell das ein was ich dir oben geschrieben habe,glaub mir,es funktioniert.
            p.S. soll ich dir die Konfik,für die tabellen schicken?

            Kommentar


            • #7
              Oke ich hab jetzt mal die Tabelle erschaffen.

              Und dann zugleich mal eine Zeile erstellt:

              Code:
              INSERT INTO `user` ( `Name` , `Alter` , `Wohnort` ) 
              VALUES ('Billy', '1988-01-13', 'Zürich');
              So sah dann der SQL Befehl aus oben =)

              Blos, wie mache ich nun eine weitere Zeile von PHP aus? Dass die Datenbank auch funktioniert???

              Gute Nacht @ all

              Billy

              @Killer200.4 Konfik??? Meinsu net ne config datei? Wenn ja, für was soll die denn gut sein???

              Kommentar


              • #8
                also ich würde deine datenbank immer so aufbauen

                als ersted die id die läuft immer weiter auch via auto_increme oder wie man das schrebt und dann die felder die du hast.

                Also am anfang baust du die verbindung auf.
                Ich schreib hier einfach mal das script rein wie ich das mache ihr könnt auch andere wege nutzen.

                Code:
                function db_connect(){
                                //Überprüfen ob schon eine verbingung aufgebaut wurde
                	if ( !@mysql_connect($db_connect)){  
                		$db_connect = mysql_connect("localhost", "benutzername", "benutzerpassword") or die("Datenbank"); //Stellt die Verbindung her oder gibt zurück das der Server nicht gefunden wurde		
                		mysql_select_db("datebankname") or die("Verbindung"); //Gibt zurück wenn die Datenbank nicht gefunden wurde
                	}
                }
                
                db_connect();
                Dann erstell ich die Tabelle via php

                Code:
                $sql = 'CREATE TABLE `user` ( `id` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT ,';	//Das feld id erstellen was immer weiter hochläuft
                $sql .= ' `Name` INT( 1 ) NOT NULL			,';										//das name feld erstellen	
                $sql .= ' `Alter` INT( 1 ) NOT NULL			,';										//das alter feld erstellen
                $sql .= ' `Wohnort` INT( 1 ) NOT NULL		,';										//das wohnort feld erstellen
                $sql .= ' PRIMARY KEY ( `id` ) )';													//id als primär festlegen 
                mysql_query($sql);																	//den query ausführen
                Danach gehts weiter mit dem eintragen in via php

                Code:
                $sql = "INSER INTO user 
                			(Name,Alter,Wohnort)
                		VALUES
                			('Billy','1988-01-13','Zürich')
                		";
                
                mysql_query($sql);
                Das abfragen geht dann mit

                Code:
                $sql = "SELECT Name,Alter,Wohnort FROM user";
                $result = mysql_query($sql);
                $row = mysql_fetch_array($result);
                
                echo $row[Name]."
                \n";
                echo $row[Alter]."
                \n";
                echo $row[Wohnort]."
                \n";
                Bei Fragen einfach Fragen

                Kommentar


                • #9
                  Zitat von Killer200.4
                  @nilsfeld kannste dir das mal bitte anschaun:
                  http://www.phpfriend.de/forum/viewtopic.php?t=15457
                  ich hab mal geantwortet du solltest aber genauer beschreben was du meinst

                  Kommentar


                  • #10
                    Moin

                    Also ich hab jetzt alles mal so gemacht wie nils mir das gesagt hat(danke nils überhaupt :wink: )

                    So sieht nun meine abfrage.php aus:


                    Code:
                    <html>
                    <head>
                    <title></title>
                    <link rel="stylesheet" type="text/css" href="format.css">
                    </head>
                    <body>
                    <center>
                    <h2>Abfrage</h2>
                    
                    
                    <?
                    include("mysql_con.php");
                    $sql = "SELECT Name,Alter,Wohnort FROM user"; 
                    $result = mysql_query($sql); 
                    $row = mysql_fetch_array($result); 
                    echo $row[Name]."
                    \n"; 
                    echo $row[Alter]."
                    \n"; 
                    echo $row[Wohnort]."
                    \n";
                    ?>
                    </center>
                    </body>
                    </html>

                    Blos... Ich bekomme nun ne Fehlermeldung, die da lautet:
                    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /usr/export/www/vhosts/funnetwork/hosting/billy/abfrage.php on line 13

                    Was bedeutet das? Mein Englisch ist auch wider nicht so gut

                    Billy

                    Kommentar


                    • #11
                      http://de.php.net/manual/de/function.mysql-error.php

                      Kommentar


                      • #12
                        Und wie kann ich das einbauen???

                        Ich meine ich kann ja nicht so gut
                        Code:
                        $row = mysql_error() . mysql_fetch_array($result);
                        schreiben...

                        oder doch? Und selbst wenn, es kommt dann ne lustige ausgabe ^^

                        Code:
                        echo $row[Name]."
                        \n"; 
                        echo $row[Alter]."
                        \n"; 
                        echo $row[Wohnort]."
                        \n";
                        anstelle von diesen da, kommen dann einfach nur Y an dieser Position

                        Billy

                        Kommentar


                        • #13
                          hm

                          Ich flip gleich aus ... Irgend wie will das Teil einfach nicht gehen. Ich hab jetzt einmal etwas ganz leichtes gemacht was eigentlich gehen sollte..

                          wenn ich auf folgende seite kommen
                          Code:
                          <html>
                          <head>
                          <link rel="stylesheet" type="text/css" href="format.css">
                          </head>
                          <body>
                          
                          
                          
                          <center>
                          <?
                          include("mysql_con.php");
                          $zeit = time();
                          $uhr = date("H:i:s",$zeit);
                          $ip = $_SERVER['REMOTE_ADDR'];
                          $sql = "INSER INTO log (IP,Zeit) VALUES ($ip,$uhr)"; 
                          mysql_query($sql);
                          echo "Es wird nun ".$ip." und ".$uhr." geschrieben.";
                          ?>
                          </body>
                          </html>
                          Schreibt es ja in die Tabelle log die IP und die Uhr. Unter phpMyAdmin steht unter den eigenschaften dieser 2:

                          Feld Typ Attribute Null Standard
                          IP varchar(20) BINARY Nein
                          Zeit time Nein 00:00:00

                          Was hab ich falsch gemacht??

                          Billy

                          Kommentar


                          • #14
                            das liegt da dran "IP varchar(20) BINARY Nein "

                            das feld ip ist varchar dann muss du es so eintragen

                            Code:
                            $sql = "INSER INTO log (IP,Zeit) VALUES ('$ip','$uhr')";
                            Wenn das feld statt varchar(20) int wäre dann kann das insert auch so ausehen

                            Code:
                            $sql = "INSER INTO log (IP,Zeit) VALUES ($ip,$uhr)"; 
                            //oder
                            $sql = "INSER INTO log (IP,Zeit) VALUES ('$ip','$uhr')";
                            hier ist beides möglich bei int aber bei varchar muss das so geschreiben werden wie oben angegeben.

                            Kommentar


                            • #15
                              Ich habe jetzt
                              Code:
                              $sql = "INSER INTO log (IP,Zeit) VALUES ('$ip','$uhr')";
                              gemacht...

                              hat aber nichts gebracht.

                              Hab darauf das Binary bei IP gelöscht, auch nichts.

                              Daruf IP auf Text gestellt, keine Reaktion

                              Hier mal meine mysql_con.php datei

                              Code:
                              <?
                              function db_connect(){
                                 //Überprüfen ob schon eine verbingung aufgebaut wurde 
                                 if ( !@mysql_connect($db_connect)){  
                              	$db_connect = mysql_connect("localhost", "billy", "++++++") or die("Datenbank");
                              	// Stellt die Verbindung her oder gibt zurück das der Server nicht gefunden wurde       
                              	mysql_select_db("billy") or die("Verbindung"); 
                              	// Gibt zurück wenn die Datenbank nicht gefunden wurde 
                                 } 
                              } 
                              db_connect();
                              ?>
                              Ganz nach dem Original von nils :wink:

                              Aber noch ne Frage, um diese Infos zu schreiben, muss ich die Tabelle nochmals neu schreiben oder reicht wenn ich:
                              Code:
                              $sql = "INSER INTO log (IP,Zeit) VALUES ('$ip','$uhr')";
                              Schreibe??

                              Billy

                              Kommentar

                              Lädt...
                              X