Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » PHP » Auslesen eines MySQL Feldes

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
19.01.2006, 19:34 Uhr
FlAsH
keine Ahnung


Hi!
Wiedermal ich,
ich würde auch gerne Googeln, aber ich wüsste nicht wie das nennen...

Ich habe folgenden Code, der eigentlich funktionieren sollte:

PHP 4:
<?php
// Set Data
$user = $_POST['user'];
$password = $_POST['password'];
$ip = $_POST['ip'];
$id = $_POST['id'];

// Make a MySQL Connection
mysql_connect("localhost", "lala", "lala") or die(mysql_error());
mysql_select_db("lala") or die(mysql_error());

// Insert a row of information into the table "accounts"
mysql_query("INSERT INTO Accounts
(user, password, ip, id) VALUES('$user', '$password', '$ip', '$id' ) "
)
or die(mysql_error());
?>


Nun ja, jetzt würde ich gerne eine zweite PHP-Datei haben, die eigentlich keinen Direkten zusammenhang hat und nur die Daten die geschrieben wurden auslesen soll.

PHP 4:
mysql_connect("localhost", "lala", "lala") or die(mysql_error());
mysql_select_db("lala") or die(mysql_error());

$user = $_POST['user'] // Einen beliebigen Benutzer der sich eigentlich registriert haben sollte...
$daten = // Hier sollten die Restlichen daten, die nicht bekannt sind ausgelesen werden (z.B USER ist bekannt, nun soll auch noch das ID Feld ausgelesen werden etc.)
echo "$daten";


Kann mit jemand bei der zweiten Datei helfen?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
19.01.2006, 20:02 Uhr
Reyx
IT-fetischistischer Wurstsalat mit rostigem Berghorn
(Operator)


So etwas in der Art?
SELECT * FROM Accounts WHERE UserName LIKE '$_POST['user']'

Aber denk dran, $_POST['user'] entsprechend zu escapen (damit dir niemand die DB crackt) und im Abfragestring korrekt unterpolieren zu lassen!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
19.01.2006, 20:12 Uhr
FlAsH
keine Ahnung


Ähm, was meinst du den mit Escapen?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
19.01.2006, 20:20 Uhr
Reyx
IT-fetischistischer Wurstsalat mit rostigem Berghorn
(Operator)


mysql_escape_string() z.B.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
20.01.2006, 19:41 Uhr
FlAsH
keine Ahnung


Hi!

Code:
Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in C:\Inetpub\vhosts\h-forum.net\httpdocs\uij\info.php on line 9

Kann mir jemand sagen was das zu bedeuten hat?


PHP 4:
<?

$link = mysql_connect('localhost', '...', '...');
if (!$link) {
   die('keine Verbindung möglich: ' . mysql_error());
}
mysql_select_db('...', $link) or die("Konnte die Datenbank nicht waehlen.");

$daten = mysql_query("SELECT * FROM Accounts WHERE User LIKE '$_GET['user']'");

echo "$daten";
?>


Ich möchte eigentlich das es jetzt das ganze folgend anzeigt:
$user $password $ip $id
(also im Original z.B so: FlAsH EinPasswort EineIp 0
nur mit simplen Abständen zwischen den einzelnen begriffen...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
20.01.2006, 21:44 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


entweder

LIKE '".$_GET['user']."'

oder

LIKE '{$_GET[user]}'

ansonsten wird er die "Resource ID=..." ausgeben.

Du musst dann schon


PHP 4:
$result = mysql_query(...);

$daten = mysql_fetch_array($result); // datensatz abrufen

mysql_free_result($result); // query releasen

echo $daten['user']." ".$daten['password']." ".$daten['ip']." ".$daten['id'];




ausgeben.
--
class God : public ChuckNorris { };

Dieser Post wurde am 20.01.2006 um 21:45 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
20.01.2006, 22:18 Uhr
FlAsH
keine Ahnung


Vielen Dank!

PHP 4:
<?
$link = mysql_connect('localhost', '...', '...');
if (!$link) {
   die('keine Verbindung möglich: ' . mysql_error());
}
mysql_select_db('uij', $link) or die("Konnte die Datenbank nicht waehlen.");
$user = mysql_escape_string($_GET['user']);

$result = mysql_query("SELECT * FROM Accounts WHERE user LIKE '{$user}'");

$daten = mysql_fetch_array($result); // datensatz abrufen

mysql_free_result($result); // query releasen

echo $daten['user']." ".$daten['password']." ".$daten['ip']." ".$daten['id'];
?>


Nun bleibt aber alles leer... Was ist der Grund dafür, und wie behebe ich dieses Problem?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
20.01.2006, 22:30 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


das free sollteste nachm ausgeben erst tun Ansonsten, kannste dir auch mal print_r($daten); das komplette array ausgeben zu lassen, evtl stimmen deine spaltennamen nicht überein.
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
20.01.2006, 23:12 Uhr
FlAsH
keine Ahnung


Vielen dank, es funktionier fehlerlos .
Wenn du mir jetzt noch sagen kannst, wie ich bei diesem PHP Code überprüfe ob bereits ein Feld "user" mit dem selben Wert wie "$_POST['user']" existiert befor ein neues Geschrieben wird, dann bin ich wirklich glücklich.

PHP 4:
<?
$user = $_POST['user'];
$password = $_POST['password'];
$password = md5($password);
$ip = $_SERVER['REMOTE_ADDR'];


$count = "1";

$link = mysql_connect('localhost', '', '');
if (!$link) {
   die('keine Verbindung möglich: ' . mysql_error());
}

mysql_select_db('', $link) or die("Konnte die Datenbank nicht waehlen.");
$user = mysql_escape_string($user);
$password = mysql_escape_string($password);
$ip = mysql_escape_string($ip);
$count = mysql_escape_string($count);
mysql_query("INSERT INTO Accounts
(user, password, ip, id) VALUES('$user', '$password', '$ip', '$count' ) "
)
or die(mysql_error());

mysql_close($link);
?>

Dieser Post wurde am 20.01.2006 um 23:13 Uhr von FlAsH editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
20.01.2006, 23:15 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


ganz einfach mach das feld unique dann funktioniert mysql_query nicht
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ PHP ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: