WebWork Magazin - Webseiten erstellen lassen, Online Medien, html

Webhoster, Webhosting Provider und Domain registrieren

Home | Registrieren | Einloggen | Suchen | Aktuelles | GSL-Webservice | Suleitec Webhosting
Reparatur-Forum | Elektro forum | Ersatzteilshop Haushalt und Elektronik


Homepage und Webhosting-Forum

Scripte und Programme für PHP, MYSQL. Diskussionen zur Programmierung im Web. Fragen zu CMS, Blogsoftware, Shops, Newsletter und vielen weiteren Scripten.


Forum » PHP & MySQL » Daten auslesen » Antworten
Benutzername:
Passwort: Passwort vergessen?
Inhalt der Nachricht: Fett | Kursiv | Unterstrichen | Link | Bild | Smiley | Zitat | Zentriert | Quellcode| Kleiner Text
Optionen: Emailbenachrichtigung bei Antworten
 

Daten auslesen
von Thodi
wißt ihr auch wie ich ein update mache ?ich habe in der tabelle zb preise und marken der preise wenn man die verändern will macht man ja ein update wißt ihr wie das geht?


Wäre lieb.


Gruß Thodi
von Thodi
Danke es klappt
von subjective
Du meinst INSERT bzw.

INSERT INTO tabelle (feld1, feld2, ...) VALUES ('val1', 'val2', ...)

von Joschi003
Select * ist falsch da muss stehen welche TAbelle es is
von Thodi
eine frage ich habe in meiner tabelle name Vorname Strasse und Ort aber er gibt nur Name und Vorname aus bzw trägt beim reinschreiben in der daten bank nur Vorname ein.

Ich habe hier mal 2 scgripte einmal das erste zum auslesen und das 2 zum reinschreiben in der datenbank.


<!doctype html public "-//W3C//DTD HTML 4.0 //EN">
<html>
<head>
<title>Title here!</title>
</head>
<body>
<?php

// Datenbank Variablen oder die connect.php
$dbname = "DB"; // Name der Datenbank
$dbuser = "U"; // Username des Datenbankbenutzers
$dbpass = "" ; // Passwort des Datenbankbenutzers
$dbserver = ""; // Server des Users

$db = @mysql_connect($dbserver,$dbuser,$dbpass);
mysql_select_db($dbname,$db);
$Name = $HTTP_POST_VARS["Name"];
$Vorname = $HTTP_POST_VARS["Vorname"];

$eintrag = "INSERT * INTO freunde (Name,Vorname) VALUES ('$Name' , '$Vorname')";

$eintragen = mysql_query($eintrag,$db);
?>


</body>
</html>



und die zum auslesen

<?php



$dbname = "DB"; // Name der Datenbank
$dbuser = "U"; // Username des Datenbankbenutzers
$dbpass = "" ; // Passwort des Datenbankbenutzers
$dbserver = ""; // Server des Users

$db = @mysql_connect($dbserver,$dbuser,$dbpass); // Verbindung zur Datenbank mit den oben genannten Variablen herstellen.
mysql_select_db($dbname,$db);


$abfrage = "SELECT * FROM freunde";
$ergebnis = mysql_query($abfrage,$db);

echo "<table border=2>";
echo" <tr><td>Name</td><td>Vorname</td></tr>";

while($row = mysql_fetch_object($ergebnis))
{
echo" <tr><td>$row->Name</td><td>$row->Vorname</td></tr>";
}

?>


was ist da falsch?

danke im voraus.

von subjective
Besser $_REQUEST oder $_POST statt $HTTP_POST_VARS nutzen. Die $HTTP_*_VARS sind deprecated. Die neuen Superglobals sind einfacher und kürzer.

Eingaben niemals ohne Prüfung und Absicherung (zB mit preg_match() und mysql_real_escape_string()) in einen SQL-String einsetzen. So entstehen SQL-Injection-Bugs.

Datenbankfehler abfangen und behandeln ist generell auch sehr sinnvoll.
von Steff_O
in dem du eine register.php erstellst mit feldern die der user ausfüllen muss!
ich gehe mal davon aus wie man so ein formular etc erstellt!

Also hier nur das wesentliche > ähnlich wie beim 1. bsp.
aber auf www.schattenbaum.de ist sehr gut beschrieben!

1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17:
<?

// Datenbank Variablen oder die connect.php
$dbname = "name";        // Name der Datenbank
$dbuser = "username";   // Username des Datenbankbenutzers
$dbpass = "passwort" ;  //  Passwort des Datenbankbenutzers
$dbserver = "localhost";  // Server des Users

$db = @mysql_connect($dbserver,$dbuser,$dbpass);
mysql_select_db($dbname,$db);
$username = $HTTP_POST_VARS["username"]; //name des Inhalts im Formularfeld Username
$password = $HTTP_POST_VARS["password"] //name des Inhats im Formularfeld Passwort

$eintrag = "INSERT INTO Mitglieder (username) VALUES ('$username')";
$eintragen = mysql_query($eintrag,$db);
?>
von Thodi
sorry sollte aber heißen
von Thodi
Es geht geil !aber noch eins wie kann ich es machen das sich einer per formular in die datenbank eintagen kann bzw er gibt name an und vorname und so weiter wie geht es dann???


Mit Freundlichen gruß Thorsten
von Thodi
Danke schön
von Steff_O
Hi probier es mal so...:

1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14:
<?
// Datenbank Variablen oder die connect.php
$dbname = "name";        // Name der Datenbank
$dbuser = "username";   // Username des Datenbankbenutzers
$dbpass = "passwort" ;  //  Passwort des Datenbankbenutzers
$dbserver = "localhost";  // Server des Users

$db = @mysql_connect($dbserver,$dbuser,$dbpass); // Verbindung zur Datenbank mit den oben genannten Variablen herstellen.
mysql_select_db($dbname,$db);                

//in deinem fall...:
$abfrage = "SELECT username, password FROM Mitglieder";
$ergebnis = mysql_query($abfrage,$db);
?>


um das ganze jetzt noch ordenlich darzustellen würd ich eine tabelle mit einbauen.
dann würde das ganze so aussehen:

1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23:
<?
// Datenbank Variablen oder die connect.php
$dbname = "name";        // Name der Datenbank
$dbuser = "username";   // Username des Datenbankbenutzers
$dbpass = "passwort" ;  //  Passwort des Datenbankbenutzers
$dbserver = "localhost";  // Server des Users

$db = @mysql_connect($dbserver,$dbuser,$dbpass); // Verbindung zur Datenbank mit den oben genannten Variablen herstellen.
mysql_select_db($dbname,$db);                

//in deinem fall...:
$abfrage = "SELECT username, password FROM Mitglieder";
$ergebnis = mysql_query($abfrage,$db);

echo "<table border=0>";
echo" <tr><td>Username</td><td>Passwort</td></tr>";

while($row = mysql_fetch_object($ergebnis))
 {
echo" <tr><td>$row->username</td><td>$row->password</td></tr>";
}

?>


mit "$row->..." liest du alle einträge die sich in dieser spalte befinden aus.
um nur von einer Person diese Daten auszulesen musst du folgendes schreiben:

statt:
1: 
2: 
3:
$abfrage = "SELECT username, password FROM Mitglieder";
$ergebnis = mysql_query($abfrage,$db);


schreibst du ^^ diesen Bereich so:
1: 
2: 
3: 
4: 
5:
$abfrage = "SELECT username, password FROM Mitglieder Where username = '$username'";
$ergebnis = mysql_query($abfrage,$db);
$zeileholen = mysql_fetch_Array($ergebnis,MYSQL_ASSOC);
$username = $zeileholen["username"];
$password = $zeileholen["password"];



P.S.
ich würde dir aber für den weiteren weg, das stöbern in diversen php-foren und den besuch
auf www.schattenbaum.net/php empfehlen
von Thodi
Hallo zusammen ich habe ein problem ich habe seit 1 woche angefangen mich mit datenbanken zu beschaffen und wollte jetzt ein parr daten speichern.
ok ich habe es über php myadmin getan das eintragen und wollte sie jetzt auslesen aber das geht nicht .hier ist mein script.

Ich bekomme ja die verbindung und ich habe in der tabelle Mitglieder nur 3 spalten also die id dann username , wohnort ,
weil ich arbeite mit phpmyadmin .

und das script habe ich auch schon versucht aus einer hilfe leiste im forum aber geht trozdem nicht .sagt nur das er verbunden ist mit der datenbank.

weil ich habe ja eine if abfrage gemacht wenn die datenbank nicht funktionieren sollte.



Hier das Script

<?php



$link = mysql_connect("host","U","passwort");

if( !$link )


{
echo "Konnte keine Verbindung aufbauen";

}

else


{

echo "Sie sind nun verbunden mit der datenbank";

}


$Data = mysql_select_db("DB");

if( !$Data )
{

echo "Die Datenbank gibt es nicht";


}

else

{

echo "Sie sind verbunden";


}


$query = "SELECT * FROM Mitglieder WHERE 1 LIMIT 0 , 30";

$result = mysql_query ( $query);

$datensatz = mysql_fetch_row ( $result);

while ($row=mysql_fetch_array($result))

{

echo $row['passwort'];

}


?>

Wie ihr seht habe ich eine if abfrage gemacht und die datenbank ist erfolgreich gestartet.
aber ich bekomme die datensätze nicht .meine tabelle heißt Mitglieder und habe 2 zeilen username und password und die wollte ich ausgegeben haben.
Kann mir da einer helfen bitte.






Vielen dank im voraus.
von Steff_O
hm ja es gibt kein fehler! der ausser dass die Tabelle leer bleiben tut!
der zeigt also keine Daten an... nix - null - etc
von HoRnominatoR
mit scheint eher, du hast die antwort nicht verstanden - denn ueber nichts anderes reden wir die ganze zeit. lass dir mal die fehler ausgeben. das es nicht funktioniert, liegt nicht an uns.

mysql_query() or die(mysql_error());
von Steff_O
hm das will aber nich grrrr
die tabelle bleibt leer also ich hab das jetzt so gemacht, dass die user alle auf der members.php angezeigt wird!
verlinkt sind die user alle mit: href=profil.php?user=$row->username

so ist das doch richtig? jedenfalls sieht der endlink dann so aus:
profil.php?user=test oder
profil.php?user=test2
jenachdem wo ich drauf klicke auf welchen user

jetzt soll aber die profil.php herausfinden welchen user ich angeklickt habe! sprich der profil.php soll gesagt werden
?user=test oder
?user=test2

ich hoffe ihr versteht wie ich das meine :(
thx
von subjective
$abfrage = "SELECT name FROM users WHERE name = '".mysql_escape_string($_GET['name'])."'";
von paul
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9:
while ($daten = mysql_fetch_array ($ergebnis) {

echo $daten['username'];
echo $daten['icqnummer'];
echo $daten['email'];

}
von Steff_O
also meinst du in etwa so?

1: 
2:
$abfrage = "SELECT name FROM users WHERE name = $_GET['name']";
$ergebnis = mysql_query($abfrage);


und ausgeben tu ich das ganze so?

1:
echo "<tr><td>$user</td>

von subjective
Dafür gibt es ja dann Funktionen wie zB mysql_real_escape_string(). Außerdem kommen Strings auch in SQL in Anführungszeichen.
von HoRnominatoR
SELECT feld FROM tabelle WHERE nick = $_GET['username']

hast du natuerlich das problem mit SQL-injections, also vorher immer pruefen ob der name auch gueltig ist und keine unerwarteten backslashes enthaelt.
von Steff_O
Also:

Nehmen wir mal das Bsp.

Ich schau mir eine Memberlist an! alle Usernamen sind anklickbar! Wenn ich auf einen Usernamen klicke, soll sich ein popup öffnen <<< das hab ich ja auch soweit > und es sollen sich dann die daten des angeklickten users dort einfinden! der popup link ist ?action=username (username vom angeklickten profil)
Bsp.
?action=test wie sag ich dem popup aber das er von user test die daten auslesen soll?

Ich kann ja nicht im phpcode schreiben username=test und ich kann ja nicht für jeden user eine php.datei anlegen... bitte helft mir mal!

Nach oben