Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

PHP While abfragen und Datenbank aktualisieren

Frage Entwicklung PHP

Mitglied: Luciver1981

Luciver1981 (Level 1) - Jetzt verbinden

06.03.2013, aktualisiert 07.03.2013, 1835 Aufrufe, 9 Kommentare

Hallo Admins

Ich habe eine Seite gebastelt wo mit Benutzerdaten gearbeitet wird. Ich möchte jetzt jeden Nutzer ermöglichen gewisse Inhalte von ihm selber geändert werden kann. Hier mal mein Konstrukt was so aber nicht funktioniert (Leere Seite ohne Fehlermeldung)
Mit
01.
mysql_select_db($mysqldb, $connection) or die("Konnte die Datenbank nicht 
02.
 
03.
waehlen."); 
04.
	 
05.
$sql = "SELECT benutzer, status, beschreibung, name FROM user"
06.
	 
07.
$user_query = mysql_query($sql) or die("Anfrage nicht erfolgreich"); 
08.
	 
09.
while ($row == mysql_fetch_row($user_query)){ 
10.
	 
11.
while ($row->benutzer == $benutzer
12.
13.
echo "<div class='text-allgemein'>$row->benutzer</div>"
14.
echo "<div class='text-allgemein'>$benutzer</div>"
15.
echo "<div class='text-allgemein'>$row->status</div>"
16.
	 
17.
18.
19.
 
Hier möchte ich ertmal die Bereits gespeicherten Daten des Nutzers abrufen.
Die Abfrage soll ist der Benutzer in Datenbank = angemeldeter Benutzer (Variable $benutzer) dann gib seine Daten aus.
Mitglied: ChrisMoltisanti
06.03.2013, aktualisiert um 13:12 Uhr
Hi
Bitte als Code posten.

01.
while ($row->benutzer == $benutzer)
macht keinen Sinn! Wo ist $Bneuzter definiert? Wieso nicht != NULL oder sowas? Kenne die Syntax von Php nicht näher, nur Java und C++

Grüße
Bitte warten ..
Mitglied: SlainteMhath
06.03.2013 um 13:32 Uhr
Moin,

Die Abfrage soll ist der Benutzer in Datenbank = angemeldeter Benutzer (Variable $benutzer) dann gib seine Daten aus.
Sowas frägt man nicht in einer while-Schleife ab, sondern in der WHERE-Klause der SQL Abfrage. In deinem Fall etwa:

01.
$sql = "SELECT benutzer, status, beschreibung, name FROM user WHERE benutzer='" . $benuzer . "'";
Die 2te While-Schleife (die wenn dann eh ein if-Statement sein sollte) kann dann raus.

lg,
Slainte
Bitte warten ..
Mitglied: nxclass
06.03.2013, aktualisiert um 14:26 Uhr
01.
$sql = "SELECT benutzer, status, beschreibung, name FROM user"; 
02.
// ... 
03.
while ($row == mysql_fetch_row($user_query)){ 
04.
while ($row->benutzer == $benutzer)
01.
$sql = "SELECT `benutzer`, `status`, `beschreibung`, `name` FROM `user` WHERE `benutzer` = '{$benutzer}'"; // vorsicht SQL injection möglich 
02.
// ... 
03.
while ($row = mysql_fetch_row($user_query)){
... die 2. while Anweisung samt {} kann dann weg - wenn dann müsste das ein if sein.
Bitte warten ..
Mitglied: Luciver1981
06.03.2013, aktualisiert 07.03.2013
Danke Slainte und nxclass der Selektor kommt also in die Datenbankabfrage und nicht in die While Schleife, wieder was gelernt . Habs jetzt so gelöst
01.
 
02.
mysql_select_db($mysqldb, $connection) or die("Konnte die Datenbank nicht 
03.
 
04.
waehlen."); 
05.
	 
06.
$sql = "SELECT benutzer, status, beschreibung, name FROM user WHERE benutzer='" . $benutzer . "'"
07.
	 
08.
$user_query = mysql_query($sql) or die("Anfrage nicht erfolgreich"); 
09.
	 
10.
while ($row = mysql_fetch_object($user_query)){ 
11.
bla 
12.
}
Und das update der Datenbank dann so:
01.
 
02.
$sql = "UPDATE user SET status = '" . $status . "', beschreibung = '" . $beschreibung . "' WHERE benutzer='" . $benutzer . "'"
03.
	 
04.
$user_query = mysql_query($sql) or die("Speichern fehlgeschlagen"); 
05.
	 
06.
echo "<p class='text-allgemein'>Deine Daten sind gespeichert</p>";
Bitte warten ..
Mitglied: SlainteMhath
06.03.2013 um 15:19 Uhr
ja genau.

Jetzt wendest du noch die funktion "mysql_real_escape()" auf alle in deinen SQL Queries verwendeten Variablen an bevor du sie benutzt und alle ist gut

ps: und verwendete doch bitte mal code-Tags in deinen Beiträgen, dann kann man deinen Source-Code auch besser lesen.
Bitte warten ..
Mitglied: Luciver1981
06.03.2013 um 16:26 Uhr
Da sprichst du ein gutes Thema an hab ein Gästebuch. Wie könnte ich mich da vor SQL Injection schützen?
Bitte warten ..
Mitglied: godlie
06.03.2013 um 21:58 Uhr
Ganz einfach in dem du dich mit dem Thema SQL Injection beschäftigst.
Bitte warten ..
Mitglied: Luciver1981
07.03.2013 um 08:22 Uhr
Hast du vielleicht paar nützliche Links oder Tipps wie ich meine Variablen schützen kann bevor sie in die Datenbank geschrieben werden.
Bitte warten ..
Mitglied: SlainteMhath
07.03.2013 um 08:45 Uhr
Hast du vielleicht paar nützliche Links oder Tipps wie ich meine Variablen schützen kann bevor sie in
die Datenbank geschrieben werden.

Ich zitier mich mal selbst:

Jetzt wendest du noch die funktion "mysql_real_escape()" auf alle in deinen SQL Queries verwendeten
Variablen an bevor du sie benutzt und alle ist gut


Anfangen könntest Du hier: http://de.wikipedia.org/wiki/SQL-Injection
und zur erheiterung noch das hier
Bitte warten ..
Ähnliche Inhalte
PHP
gelöst PHP Version und Joomla aktualisieren (2)

Frage von Leo-le zum Thema PHP ...

Datenbanken
Datenbank Abfrage sehr langsam! Bitte um Hilfe (12)

Frage von samet22 zum Thema Datenbanken ...

PHP
PHP soll Datensätze in der Datenbank überprüfen (2)

Frage von Yanmai zum Thema PHP ...

PHP
PHP MySQL Login (7)

Frage von Yanmai zum Thema PHP ...

Neue Wissensbeiträge
Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Microsoft

Die neuen RSAT-Tools für Win10 1709 sind da

(2)

Information von DerWoWusste zum Thema Microsoft ...

Heiß diskutierte Inhalte
Windows 10
Windows 10 Ordnerfreigabe (21)

Frage von Xaero1982 zum Thema Windows 10 ...

Router & Routing
Allnet - VDSL2 Modem - SFP (mini-GBIC) (20)

Frage von Dobby zum Thema Router & Routing ...

Monitoring
Netzwerk-Monitoring Software (18)

Frage von Ghost108 zum Thema Monitoring ...

Windows 10
Seekrank bei Windows 10 (15)

Frage von zauberer123 zum Thema Windows 10 ...