php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 11.05.2005, 18:41  
Gast
 
Beiträge: n/a
Standard Anfängerfragen? [GEKLÄRT]

Ein freundliches Hallo ersteinmal.

Habe vor einigen Tagen mit PHP begonnen. Bin gerade bei Datenbankverbindungen. Nun zu meiner ersten Frage:

Ich frage mit folgendem eine Datenbank ab und lasse mir das Ergebnis liefern:

<?
$sql = "SELECT * FROM abfrage.Name";
$result = mysql_query($sql) or die(mysql_error());
?>
<?
while ($row = mysql_fetch_assoc($result))
{
echo $row['Name']."
";
}
?>

Ich habe eine Tabelle mit der Bezeichnung: abfrage
und eine Spalte mit der Bezeichnung: Name

Wiso schreibt man da am Ende abfrage.Name schließlich hießt meine Tabelle ja nicht abfrage.Name sondern abfrage. Angenommen ich setzte jetzt das so zusammen: SELECT Name FROM abfrage"; dann kommt die Fehlermeldung das die Tabelle abfrage.abfrage nicht gefunden wurde. check ich echt nicht.

Und nun zum zweiten:

Kann mir jemand erklären wie ich folgendes löse:
Ich habe eine Datenbank mit z.b. Email und Kennwort. die Werte dazu existieren schon. Jetzt möchte ich in einem Formular die Werte kontrollieren, also:

email und Kennwort eingeben
Überprüfen
wenn übereinstimmend dann gehe auf Seite XY

Vielen vielen dank für eure Hilfe.

MfG,
Michi
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 11.05.2005, 19:05  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard Re: Anfängerfragen?

Willkommen im Forum.

Zitat:
Zitat von Secret-Service

<?
$sql = "SELECT * FROM abfrage.Name";
$result = mysql_query($sql) or die(mysql_error());
?>
<?
while ($row = mysql_fetch_assoc($result))
{
echo $row['Name']."
";
}
?>

Ich habe eine Tabelle mit der Bezeichnung: abfrage
und eine Spalte mit der Bezeichnung: Name
Gratuliere! Anfänger, aber trotzdem mysql_error() verwendet!
Wenn das mal einige der Unverbesserlichen machen würden...

Wenn Du das jetzt noch in [ PHP ] [ /PHP ] Tags einpackst, sind wir alle glücklich. (Ohne die Leerzeichen in den eckigen Klammern)

Zitat:
Zitat von Secret-Service

Wiso schreibt man da am Ende abfrage.Name schließlich hießt meine Tabelle ja nicht abfrage.Name sondern abfrage. Angenommen ich setzte jetzt das so zusammen: SELECT Name FROM abfrage"; dann kommt die Fehlermeldung das die Tabelle abfrage.abfrage nicht gefunden wurde. check ich echt nicht.
Die fragwürdige Abfrage ist aber richtig.

Hast Du evtl. irgendwo einen Tippfehler drin?
Geht evtl. mysql_connect() oder mysql_select_db() schief bzw. verwendest Du die überhaupt?

Zitat:
Zitat von Secret-Service

Und nun zum zweiten:

Kann mir jemand erklären wie ich folgendes löse:
Ich habe eine Datenbank mit z.b. Email und Kennwort. die Werte dazu existieren schon. Jetzt möchte ich in einem Formular die Werte kontrollieren, also:

email und Kennwort eingeben
Überprüfen
wenn übereinstimmend dann gehe auf Seite XY
Wo genau liegt dein Problem?

Such evtl. mal hier im Forum nach "Login" oder "Session".
Sessions sind auf jeden Fall nützlich, wenn Du Benutzer anmelden lassen willst.
Irgendwo müsste hier auch ein Tutorial zu Sessions rumliegen.
Der_Gerhard ist offline  
Alt 11.05.2005, 19:12  
Gast
 
Beiträge: n/a
Standard

hey,

cool geht ja schonmal schnell hier, hab die richtigen tags eingebaut *grins*

die abfrage funktioniert. also das ganze teil funktioniert, nur versehe ich die "tehoretische" seite von dem ganzen noch nicht.

Also:

Normalerweise: $sql = "SELECT * FROM abfrage.Name";

Das bedeutet: Markiere alles von abfrage.Name

nun zu dem was ich machen würde:

$sql = "SELECT Name FROM abfrage";

Dabei WÜRDE die Fehlermeldung kommen das die tabelle abfrage.abfrage nicht gefunden wurde.

Meine Tabelle heißt: abfrage
und die Spalte heißt: Name

Frage:
Wiso schreibe ich $sql = "SELECT * FROM abfrage.Name";

Denn: Wenn ich nur eine Spalte habe oder auch mehrere is ja egal. ich möchte aber nur die eine Spalte anwählen, also die Spalte Name. Wiso geht es dann nicht das ich $sql = "SELECT Name FROM abfrage";

Verstehst du?

Danke nochmal

MfG,
Michi
 
Alt 11.05.2005, 19:17  
Erfahrener Benutzer
 
Registriert seit: 30.01.2005
Beiträge: 435
Jojo1
Standard

Zitat:
Zitat von Secret-Service
hey,

cool geht ja schonmal schnell hier, hab die richtigen tags eingebaut *grins*

die abfrage funktioniert. also das ganze teil funktioniert, nur versehe ich die "tehoretische" seite von dem ganzen noch nicht.

Also:

Normalerweise: $sql = "SELECT * FROM abfrage.Name";

Das bedeutet: Markiere alles von abfrage.Name

nun zu dem was ich machen würde:

$sql = "SELECT Name FROM abfrage";

Dabei WÜRDE die Fehlermeldung kommen das die tabelle abfrage.abfrage nicht gefunden wurde.

Meine Tabelle heißt: abfrage
und die Spalte heißt: Name

Frage:
Wiso schreibe ich $sql = "SELECT * FROM abfrage.Name";

Denn: Wenn ich nur eine Spalte habe oder auch mehrere is ja egal. ich möchte aber nur die eine Spalte anwählen, also die Spalte Name. Wiso geht es dann nicht das ich $sql = "SELECT Name FROM abfrage";

Verstehst du?

Danke nochmal

MfG,
Michi
ähhhhhhhhhh?

PHP-Code:
<?php
SELECT spalte FROM tabelle
?>
wo war das prob?
hast du doch da oben stehen
?>[/php]
Jojo1 ist offline  
Alt 11.05.2005, 19:19  
Gast
 
Beiträge: n/a
Standard

ja klar, aber wiso schreibe ich $sql = "SELECT spalte FROM tabelle.spalte";


Nochmals danke *grins*
 
Alt 11.05.2005, 19:22  
Erfahrener Benutzer
 
Registriert seit: 30.01.2005
Beiträge: 435
Jojo1
Standard

Zitat:
Zitat von Secret-Service
ja klar, aber wiso schreibe ich $sql = "SELECT spalte FROM tabelle.spalte";


Nochmals danke *grins*
hä wie meinst du das?
von 2 verschiedenen tabellen oder wie?
Jojo1 ist offline  
Alt 11.05.2005, 19:24  
Gast
 
Beiträge: n/a
Standard

nene, also: normal ist $sql = "SELECT * FROM abfrage.Name";

Ich habe eine Tabelle: abfrage
und eine Spalte: Name

Wiso muss ich da $sql = "SELECT * FROM abfrage.Name"; schreiben
denn logisch gesehen $sql = "SELECT Name FROM abfrage";
 
Alt 11.05.2005, 19:24  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Zitat:
Zitat von Secret-Service
hey,

cool geht ja schonmal schnell hier, hab die richtigen tags eingebaut *grins*
öhm, und wo hast Du die eingebaut?

Hier geht's manchmal flott und manchmal nicht. Solange niemand nach 30 Minuten ungeduldig wird und rumnörgelt, bleiben alle schön geschmeidig...

Zitat:
Zitat von Secret-Service
die abfrage funktioniert. also das ganze teil funktioniert, nur versehe ich die "tehoretische" seite von dem ganzen noch nicht.

Also:

Normalerweise: $sql = "SELECT * FROM abfrage.Name";

Das bedeutet: Markiere alles von abfrage.Name
Richtig. Aber: Isch 'abe über'aupt keine Tabelle "abfrage.Name"!
Also: Abfrage ist Bullsh**

Zitat:
Zitat von Secret-Service
nun zu dem was ich machen würde:

$sql = "SELECT Name FROM abfrage";

Dabei WÜRDE die Fehlermeldung kommen das die tabelle abfrage.abfrage nicht gefunden wurde.
Was heißt hier würde die Fehlermeldung kommen? Kommt sie oder nicht?

Zitat:
Zitat von Secret-Service
Meine Tabelle heißt: abfrage
und die Spalte heißt: Name
PHP-Code:
<?
$sql 
"SELECT Name FROM abfrage"
?>
Diese Abfrage ist korrekt! Punkt.

Zitat:
Zitat von Secret-Service
Frage:
Wiso schreibe ich $sql = "SELECT * FROM abfrage.Name";
Keine Ahnung. Am besten man schreibt das gar nicht.

Zitat:
Zitat von Secret-Service
Denn: Wenn ich nur eine Spalte habe oder auch mehrere is ja egal. ich möchte aber nur die eine Spalte anwählen, also die Spalte Name. Wiso geht es dann nicht das ich $sql = "SELECT Name FROM abfrage";
Ich weiß nicht, warum das nicht geht. Daher hatte ich noch nach Details gefragt. (mysql_connect, mysql_select_db)

"SELECT * FROM" ist bäh!
http://www.php-faq.de/q/q-sql-select.html

Poste mal den Code vor der Abfrage.
Der_Gerhard ist offline  
Alt 11.05.2005, 19:26  
Gast
 
Beiträge: n/a
Standard

Hier der komlette Code

<?
$host = "xxxx";
$user = "xxx";
$password = "xxx";
$db = "abfrage";

$link = mysql_connect($host, $user, $password)
or die("Fehler beim Verbinden mit der Datenbank");

echo "Connect OK!";

mysql_select_db($db)
or die("Datenbank konnte nicht angewählt werden");

?>

<?
$sql = "SELECT * FROM abfrage.Name";
$result = mysql_query($sql) or die(mysql_error());
?>
<?
while ($row = mysql_fetch_assoc($result))
{
echo $row['Name']."
";
}
?>

Zusatz: So wie es oben steht geht es.
Wenn ich aber SELECT Name FROM abfrage"; schreibe geht es nicht. Was aber eigentlich logischer sein müsste
 
Alt 11.05.2005, 19:34  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Wie war das mit den PHP-Tags?

Scheinbar wird die DB nicht richtig gewählt....

Probier mal
PHP-Code:
<?
mysql_select_db
($db,$link) or die....
?>
Sollte aber nicht viel ausmachen...

Die DB und die Tabelle heißen beide "abfrage". Ist das korrekt?
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:35 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.