Ankündigung

Einklappen
Keine Ankündigung bisher.

Probleme beim Connecten

Einklappen

Neue Werbung 2019

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

  • krackmoe
    hat ein Thema erstellt Probleme beim Connecten.

    Probleme beim Connecten

    Wollte mit folgendem Code auf meinen MySql Server connecten:

    <
    Code:
    ?php
    define('MYSQL_HOST', 'localhost');
    define('MYSQL_USER', 'xxx');
    define('MYSQL_PASS', 'xxx');
    define('MYSQL_DATABASE', 'Zitate'); 
    
    mysql_query($db_link = @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS));
    
    @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR
        die("Es konnte keine Verbindung aufgebaut werden\n".mysql_error());
    @mysql_select_db(MYSQL_DATABASE) OR
        die("Konnte ".MYSQL_DATABASE." nicht benutzen ".mysql_error());    
    ?>
    <?php
        $hinzufuegen =$_REQUEST['hinzufuegen'];
        
        echo"<form action='raufladen.php' METHOD='POST'>";
        echo "Hier bitte neue Zitate eingeben";
        echo"<input type='text' name='hinzufuegen' $REQUEST_METHOD == 'POST')"
    ?>
    
    <?php
        $eintrag = "INSERT INTO Zitate(Zitat) VALUES ($hinzufuegen)";
        mysql_query($eintrag);        
    ?>
    Mir kommt jedoch immer die Fehlermeldung: "Konnte Zitate nicht benutzen Access denied for user 'xxx'@'localhost' to database 'Zitate'"

    Die Tabelle Zitate gibt es! Weiß jemand woran das liegt, bzw was ich ausprobieren kann?

  • litterauspirna
    antwortet
    Hallo!

    Die @ Zeichen sind dazu da Fehlermeldungen zu unterdrücken! Um zu testen ob auch alles klappt solttest du immer auf das @ verzichten!

    Einen Kommentar schreiben:


  • krackmoe
    antwortet
    Wah Danke jedenfalls wegen den Zugangsdaten.. gar nicht gecheckt!

    Wofür sind die @ eigentlich gut? Hab ich so auf einer Php Seite gefunden..

    Okay.. ich werd mir das schnell mal ansehen und dann darauf antworten!

    Einen Kommentar schreiben:


  • lazydog
    antwortet
    Zusätzlich:
    Anonymisiere zuerst mal deine Zugangsdaten!
    Dann nimm alle «@» aus dem Code

    Dann aber die Hauptfrage: Wo überprüfst du, ob das Formular überhaupt abgeschickt wurde?

    Wenn du den Forumsregeln entsprächend das error_reporting eingeschaltet hättest, gäbe das ein paar hübsche Fehlermeldungen

    Einen Kommentar schreiben:


  • David
    antwortet
    1. Zitat von krackmoe
      mysql_query($db_link = @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS));
      Ersatzlos streichen.
    2. mysql_query(...) or die(mysql_error()).
    3. Statt _REQUEST _POST verwenden.
    4. $hinzufuegen = mysql_real_escape_string($_POST['hinzufuegen']);
    5. PHP-Code:
      echo '
        <form action="raufladen.php" method="POST">
          <div>
            Hier bitte neues Zitat eingeben
            <input type="text" name="hinzufuegen">
            <input type="submit" value="senden" />
          </div>
        </form>
      '

    Einen Kommentar schreiben:


  • krackmoe
    antwortet
    Har stimmt! Das war der Fehler Danke!

    Andere Frage...

    Code:
    <?php
    define('MYSQL_HOST', 'localhost');
    define('MYSQL_USER', 'xxx');
    define('MYSQL_PASS', 'xxx');
    define('MYSQL_DATABASE', 'xxx'); 
    
    mysql_query($db_link = @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS));
    
    @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR
        die("Es konnte keine Verbindung aufgebaut werden\n".mysql_error());
    @mysql_select_db(MYSQL_DATABASE) OR
        die("Konnte ".MYSQL_DATABASE." nicht benutzen ".mysql_error());    
    
        $hinzufuegen =$_REQUEST['hinzufuegen'];
        
        echo"<form action='raufladen.php' METHOD='POST'>";
        echo"Hier bitte neues Zitat eingeben ";
        echo"<input type='text' name='hinzufuegen'>";
        echo"<input type='submit' value='senden'></input>";
        echo"</form>";
    
        $eintrag = "INSERT INTO Zitate('Zitat') VALUES ('$hinzufuegen')";
        mysql_query($eintrag);        
    ?>
    Er schreibt mir einfach keinen Eintrag in die Tabelle rein? Stimmt das so wie ich das mache!? Oder muss ich da irgendwo noch ein mysql_query oder so dazu tun? Weiß leider ned genau, wann ich das brauche...

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Datenbank <> Table
    Heißen die wirklich beide "Zitate"?

    Einen Kommentar schreiben:

Lädt...
X