sql_db fehler
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
abfrage
anzahl
arbeiten
array
code
datenbank
email
fehler
hilfe
http
manual
not
parameter
server
stern
suche
tabelle
url
verbindung
zeile
-
Kann mir Jemand Helfen ich habe Mehre Tabellen in Datenbank
und der erkent nicht der Richtige Tabelle
ich hab so Probiert aber Klapt nich
$MYSQL_HOST = '******'; $MYSQL_USER = '*********'; $MYSQL_PASS = '*********; $MYSQL_DATA = 'db_******'; $MySQL_DB = "********"; $connid = @mysql_connect($MYSQL_HOST, $MYSQL_USER, $MYSQL_PASS, $MySQL_DB) or die("Error: ".mysql_error()); mysql_select_db($MYSQL_DATA) or die(mysql_error());
Danke
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
so kommst du nichtmal auf die richtige Datenbank
denn in mysql_connect() hat der Name der Datenbank noch nichts zu suchen, nur Host, User, Passwort
.... siehe: http://php.net/manual/de/function.mysql-connect.php
wenn die Verbindung zum Server aufgebaut ist, dann die Datenbank mit mysql_select_db() auswählen
... siehe: http://php.net/manual/de/function.mysql-select-db.php
erst dann kannst Du aus einer Tabelle in dieser Datenbank auf diesem Server etwas auslesen ...
... siehe: http://php.net/manual/de/function.mysql-query.php
Nochmal der Ablauf in 5 Schritten:
----------------------------------------------------------
1. Variablen festlegen (Host, User, Password, etc)
2. Verbindung zu MySQL Server herstellen
3. Die Datenbank auswählen
4. Abfrage z.B. SELECT von der Tabelle machen
5. mit dem Ergebnis ($result) arbeiten
... mal so ganz grob in PHP:
<?php // ----------------------------------------------- // -------------- 1. Variablen festlegen $mysql_host = 'xxxxxxxxxx.yyy'; $mysql_user = 'AAAAA12345'; $mysql_pass = 'zyzyzyzyzyzy'; $mysql_name = 'db12312312'; $mysql_table = 'deine_tabelle'; // ----------------------------------------------- // -------------- 2. Verbindung zu MySQL Server $con = mysql_connect($mysql_host, $mysql_user, $mysql_pass); if (!$con) { print "<br />Could not connect DB: <br />\n" . mysql_error(); exit; } // ----------------------------------------------- // -------------- 3. Datenbank auswählen $sel = mysql_select_db($mysql_name, $con); if (!$sel) { print "<br />Could not select DB: <br />\n" . mysql_error(); exit; } // ----------------------------------------------- // -------------- 4. Abfrage von der Tabelle $query = "SELECT * FROM ".$mysql_table.""; $result = mysql_query($query); if (!$result ) { print "<br />Could not query table: <br />\n" . mysql_error(); exit; } // ----------------------------------------------- // -------------- 5. mit Ergebnis ($result) arbeiten $data = array(); while($row = mysql_fetch_assoc($result)) { $data[] = $row; } ## $anzahl = mysql_num_rows($result); $anzahl = count($data); mysql_close($con); // ----------------------------------------------- // -------------- DEBUG Ausgabe der Daten print "<br />\n"; print "<br />Anzahl: " . $anzahl . \n"; print "<br />\n"; print "<pre style=\"text-align:left; margin:6px; padding:6px; background:#DEDEDE;\">\n"; print_r($data); print "</pre>\n"; print "<br />\n"; print "<br />\n"; // ----------------------------------------------- ?>
anstatt
kannst du auch$anzahl = count($data);
machen.$anzahl = mysql_num_rows($result);
Beitrag zuletzt geändert: 23.1.2013 0:39:49 von seofav -
seofav schrieb:
bevor du da gros hilfe leistest, möchtest bitte seinen code ansehen!
blaaa ...
tshaika schrieb:
ich gehe jetzt davon aus, dass du im originalcode die sterne richtig drinnen hast ;) dann sollte es auch funzen.
... ich hab so Probiert aber Klapt nich ...
$MYSQL_HOST = '******'; $MYSQL_USER = '*********'; $MYSQL_PASS = '*********; $MYSQL_DATA = 'db_******'; $MySQL_DB = "********"; $connid = @mysql_connect($MYSQL_HOST, $MYSQL_USER, $MYSQL_PASS, $MySQL_DB) or die("Error: ".mysql_error()); mysql_select_db($MYSQL_DATA) or die(mysql_error());
Aber!!!! schaue deine 3. zeile an! was fehlt dort???? -
czibere
nein soll ich für dich noch Original daten eintragen ?
die Sterne sind Zensur
dire Klamma in Driete zeile Ja ich weiß Copy fehler
es geht um SQL Tabelle sehen Ganz Oben
-
beim Code von seofav ist nur ein kleiner Fehler
falsch:
print "<br />Anzahl: " . $anzahl . \n";
richtig:
print "<br />Anzahl: " . $anzahl . "\n";
sonst funktioniert es, habe es getestet
... vielleicht hast Du den Unterstrich bei $mysql_name vergessen? ...$mysql_name = 'db_********';
oder sonst irgendwelche Zugangsdaten zum MySQL-Server falsch in die Variablen eingetragen?
denn "Access denied" deutet auf falschen Username oder Passwort hin
----------
beim Code von tshaika fehlt einfach bei
ein$MYSQL_PASS = '*********;
vor dem'
;
also richtig:$MYSQL_PASS = '*********';
funktioniert dann auch, ist ja quasi das gleiche ...
... aber ich frage mich auch, was
als der 4 Parameter in mysql_connect() ist .... ?$MySQL_DB
soll das new_link sein?
Für den Fall, dass ein zweiter Aufruf von mysql_connect() mit den gleichen Argumenten erfolgt, wird keine neue Verbindung aufgebaut, sondern die Verbindungs-Kennung der schon bestehenden Verbindung zurückgeliefert. Der Parameter new_link beeinflusst dieses Verhalten und mysql_connect() öffnet immer eine neue Verbindung, sogar dann, wenn mysql_connect() zu einem früheren Zeitpunkt mit den gleichen Parametern aufgerufen wurde. Bei SQL safe mode wird dieser Parametern ignoriert.
wenn ja, macht man da doch (bool) Wert TRUE oder FALSE ??? ... oder wie oder warum der 4. Parameter?
Beitrag zuletzt geändert: 23.1.2013 11:20:48 von afinanzen -
also zum mit schreiben
1 ich habe mehrere tabelle und My PHP Script greift auf fasche tabelle
2 4 Parameter
1 $MYSQL_HOST = adressse von Daten Bank
2 $mysql_user = Name der Benutzer
3 $MYSQL_PASS = Passwort von Benutzer
4 $MYSQL_DATA = Name von Datenbank
5 $mysql_table = Tabellen Name
My PHP script ist So
error_reporting(E_ALL); session_start(); // ----------------------------------------------- // -------------- 1. Variablen festlegen $mysql_host = 'mysql.lima-city.de'; $mysql_user = 'USER*****'; $mysql_pass = '**********'; $mysql_name = 'db_********_*'; $mysql_table = 'Hyperlink'; // ----------------------------------------------- // -------------- 2. Verbindung zu MySQL Server $con = mysql_connect($mysql_host, $mysql_user, $mysql_pass); if (!$con) { print "<br />Could not connect DB: <br />\n" . mysql_error(); exit; } // ----------------------------------------------- // -------------- 3. Datenbank auswählen $sel = mysql_select_db($mysql_name, $con); if (!$sel) { print "<br />Could not select DB: <br />\n" . mysql_error(); exit; } // ----------------------------------------------- // -------------- 4. Abfrage von der Tabelle $query = "SELECT * FROM ".$mysql_table.""; $result = mysql_query($query); if (!$result ) { print "<br />Could not query table: <br />\n" . mysql_error(); exit; } // ----------------------------------------------- // -------------- 5. mit Ergebnis ($result) arbeiten $data = array(); while($row = mysql_fetch_assoc($result)) { $data[] = $row; } ## $anzahl = mysql_num_rows($result); $anzahl = count($data); mysql_close($con); // ------------------------------------------------------------------------------------------------------------------------------------------- // Pruefen und merken ob alle Felder Fehlerfrei ausgefuellt wurden // ------------------------------------------------------------------------------------------------------------------------------------------- $aErrors = array(); if(isset($_POST['submit']) and $_POST['submit']=='Registrieren') { $aNicknames = array(); $aEmails = array(); $sql = "SELECT Nickname, Email FROM User"; $vResult = mysql_query($sql) or die(mysql_error()); while($aRow=mysql_fetch_assoc($vResult)){ $aNicknames[] = $row['Nickname']; $aEmails[] = $row['Email']; }
**** = zensiert
kommt JetztAccess denied for user 'root'@'webspace6.lima-city.de' (using password: NO)
bei andere code
error_reporting(E_ALL); session_start(); // ------------------------------------------------------------------------------------------------------------------------------------------- // Verbindung zur Datenbank herstellen // ------------------------------------------------------------------------------------------------------------------------------------------- $MYSQL_HOST = 'mysql.lima-city.de'; $MYSQL_USER = 'USER******; $MYSQL_PASS = '********'; $MYSQL_DATA = 'db_*******_****; $connid = @mysql_connect($MYSQL_HOST, $MYSQL_USER, $MYSQL_PASS) or die("Error: ".mysql_error()); mysql_select_db($MYSQL_DATA) or die(mysql_error()); // ------------------------------------------------------------------------------------------------------------------------------------------- // Pruefen und merken ob alle Felder Fehlerfrei ausgefuellt wurden // ------------------------------------------------------------------------------------------------------------------------------------------- $aErrors = array(); if(isset($_POST['submit']) and $_POST['submit']=='Registrieren') { $aNicknames = array(); $aEmails = array(); $sql = "SELECT Nickname, Email FROM User"; $vResult = mysql_query($sql) or die(mysql_error()); while($aRow=mysql_fetch_assoc($vResult)){ $aNicknames[] = $row['Nickname']; $aEmails[] = $row['Email']; }
greift auf Falsche DatenBank zu
Ursache Bestimt
Das die Erste Beite name in Datenbank Tabelle beide Nutzname und Email sind
und kommt columb Fehler auf
Beitrag zuletzt geändert: 23.1.2013 12:48:18 von tshaika -
tshaika schrieb:
ich habe dich darum nicht gebeten.
czibere
nein soll ich für dich noch Original daten eintragen ?
die Sterne sind Zensur
danke für die aufklärung.
dire Klamma in Driete zeile Ja ich weiß Copy fehler
nein! kein 'Klamma', sonder 'single quote'.
ich denke die ganze zeit jetzt darüber nach, wie ein zeichen beim copieren verschwindet!?
es geht um SQL Tabelle sehen Ganz Oben
aha!
bevor du auf etwas antwortest, solltest den beitrag so lesen, dass du es auch verstehst ;) -
ja komisch,
ich habe beide Codes getestet, bei mir funktioniert es (allerdings auf anderem Server)
... bist Du Sicher, das Du für beide Codes die richtigen MySQL Zugangsdaten verwendest ?
auch Datenbankname und Groß-/Klein Schreibung (der Tabelle)
EDIT:
ahhhh ..... Fehler gefunden in Deinem Script mit dem Code von seofav ....
Du muss natürlich das
ganz nach unten in Deinem Script setzenmysql_close($con);
wenn das schon ausgeführt wurde, dann funktioniert
natürlich nicht mehrmysql_query($sql)
denn dann ist die Verbindung schon wieder geschlossen, daher dann das "Access denied"
und ... Achtung, wieder kleiner Fehler in zweitem Code
falsch:
$MYSQL_DATA = 'db_*******_****;
und
$MYSQL_USER = 'USER******;
richtig:
$MYSQL_DATA = 'db_*******_****';
und
$MYSQL_USER = 'USER******';
... also wieder das single quote
vor dem semikolon'
;
aber ist evtl. nur Tippfehler hier im Forum wegen *** Zensur
und ... versuch mal in Deinem Code bei mysql_select_db()
den zweiten Parameter, die Ressource-ID mit zu verwenden
... $connid = @mysql_connect($MYSQL_HOST, $MYSQL_USER, $MYSQL_PASS) or die("Error: ".mysql_error()); mysql_select_db($MYSQL_DATA, $connid) or die(mysql_error()); ...
damit mysql_select_db() weiss, auf welcher Ressource-ID ($connid) der Zugriff erfolgen soll ...
Beitrag zuletzt geändert: 23.1.2013 13:10:07 von afinanzen -
czibere
ich Formuliere anderes um
Bei Schreiben von Sternen hab ich aus versehen single quote Gelöscht
mit Klammar habt ich komma gemeind = single quote
Sorry für mis verstendniss -
und ... funktioniert es jetzt
... wenn Du
ganz nach unten setzt (oder einfach die Zeile weg lässt)mysql_close($con);
-
Ja es funktioniert
aber Problem war weiter unter
und Zwa Hier
$sql = "SELECT Name, Email FROM User";
User gleicher name wie andere tabelle
und Hier nochmal gleicher
$cSql = "INSERT INTO `User` (
geht Jetzt 1A
Beitrag zuletzt geändert: 23.1.2013 15:23:48 von tshaika -
tshaika schrieb:
Sorry Fehler
jetzt
Access denied for user 'root'@'webspace6.lima-city.de' (using password: NO)
Du brauchst ein passwort -
tshaika schrieb:
also zum mit schreiben
kommt JetztAccess denied for user 'root'@'webspace6.lima-city.de' (using password: NO)
zum abschreiben der korrekten Zugangsdaten solltest du http://www.lima-city.de/databases öffnen
-
Liebe Leute,
ich bin neu hier und habe folgendes Problem:
Ich habe eine Access Datenbank, die ich hier im SQL online stellen möchte.
Da ich wie gesagt neu bin, hoffe ich auf Eure Hilfe.
Was genau muss ich tun.
(Sorry aber die Suche brachte mir nur ewig alte Beiträge auf die sicher niemand mehr reagiert) -
mirkosoft schrieb:
Liebe Leute,
ich bin neu hier und habe folgendes Problem:
Ich habe eine Access Datenbank, die ich hier im SQL online stellen möchte.
Da ich wie gesagt neu bin, hoffe ich auf Eure Hilfe.
Was genau muss ich tun.
(Sorry aber die Suche brachte mir nur ewig alte Beiträge auf die sicher niemand mehr reagiert)
ich habe abfrage geändert
und zwar hier
$sql = "SELECT Name, Email FROM User"; hier kommt die name von tabelle von Datenbank
genau so hier
$cSql = "INSERT INTO `User` (
probier mal
Beitrag zuletzt geändert: 12.3.2013 23:01:58 von tshaika -
mirkosoft schrieb:
es gibt hier zuhauf seiten mit dem problem ;)
Liebe Leute,
ich bin neu hier und habe folgendes Problem:
Ich habe eine Access Datenbank, die ich hier im SQL online stellen möchte.
Da ich wie gesagt neu bin, hoffe ich auf Eure Hilfe.
Was genau muss ich tun.
(Sorry aber die Suche brachte mir nur ewig alte Beiträge auf die sicher niemand mehr reagiert)
Beitrag zuletzt geändert: 12.3.2013 23:57:59 von czibere -
Ok, hab mich wohl falsch ausgedrückt.
Wie funktioniert das hier bei Lima? Geht das überhaupt?
-
Wie funktioniert das hier bei Lima? Geht das überhaupt?
ja, das geht, sobald du dir eine datenbank "ersteigert" hast kannst du loslegen...
den bereich zum ersteigern einer datenbank findest du hier: http://www.lima-city.de/auctions
deine anmeldedaten und datenbanknamen findest du dann hier: http://www.lima-city.de/databases
phpMyAdmin ist auch schon bereitgestellt: http://phpmyadmin.lima-city.de/
eine ausführliche beschreibung des ganzen findest du hier: http://www.lima-city.de/2008/mysql -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage