zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Serveradministration und serverseitige Scripte
Seite neu laden MySQL Abfrage mit PHP

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 09.04.2011, 05:22
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 15.11.2009
Beiträge: 132
andre-ne befindet sich auf einem aufstrebenden Ast
Frage MySQL Abfrage mit PHP

Hallo!

Ich habe folgendes Problem:

In meiner Datenbank habe ich meine Tabelle mit den Feldern:

id
username
passwort
ordner


Die Abfrage für username und passwort habe ich erfolgreich hinbekommen.

Jetzt möchte ich gerne den Wert aus dem Feld ordner in eine Variable übergeben, da es sich hierbei später um einen Downloadlink handeln soll der dem User zugewiesen wurde und jeder User einen anderen Link hat.

Mein Script welches username und passwort überprüft sieht bis jetzt wie folgt aus (siehe weiter unten). Nun muss noch die Abfrage für ordner eingebracht werden und hier weiß ich absolut nicht weiter (ich bin noch ein Anfänger in Sachen PHP und MySQL).


PHP-Code:
<?php
mysql_connect 
("localhost""USER""PASSWORT") or die ("Verbindung zur Datenbank fehlgeschlagen");
mysql_select_db ("DATENBANKNAME") or die ("Datenbank konnte nicht ausgewählt werden");

$username $_POST['username'];
$passwort md5($_POST['passwort']);

$username stripslashes($username);
$passwort stripslashes($passwort);
$username mysql_real_escape_string($username);
$passwort mysql_real_escape_string($passwort);

$sql="SELECT * FROM login WHERE username='$username' and passwort='$passwort'";
$result mysql_query($sql);

$count mysql_num_rows($result);

if(
$count==1)
    {
    
session_register("username");
    
session_register("passwort");
    
header("location: ###ORDNER###");
    }
    
    else    
        {
        
header("location: error.php");
        }
?>
An der Stelle von ###ORDNER### soll der Wert aus ordner eingefügt werden.

Wäre nett wenn mir jemand weiter helfen könnte mit dem richtigen Codeschnippsel

Gruß
André
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 09.04.2011, 11:29
Benutzerbild von mantiz
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 25.02.2007
Beiträge: 2.844
mantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz sein
Standard

Hier wäre mal ein Link für Dich, um die Basics zu lernen: Quakenet/#php Tutorial - de - Einleitung
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 09.04.2011, 16:46
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 15.11.2009
Beiträge: 132
andre-ne befindet sich auf einem aufstrebenden Ast
Standard

Okay danke dafür.
Aber wie ich nun die Abfrage dort einbauen könnte ist mir immer noch nicht ganz klar
Mit Zitat antworten
  #4 (permalink)  
Alt 09.04.2011, 16:53
Benutzerbild von mantiz
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 25.02.2007
Beiträge: 2.844
mantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz sein
Standard

Ist alles im verlinkten Tutorial zu finden.
Mit Zitat antworten
  #5 (permalink)  
Alt 09.04.2011, 17:43
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 15.11.2009
Beiträge: 132
andre-ne befindet sich auf einem aufstrebenden Ast
Standard

Mein Script sieht nun so aus, funktioniert jedoch nicht und ich finde den Fehler nicht

PHP-Code:
$username $_POST['username'];
$passwort md5($_POST['passwort']);

$username stripslashes($username);
$passwort stripslashes($passwort);
$username mysql_real_escape_string($username);
$passwort mysql_real_escape_string($passwort);

$sql="SELECT * FROM loginfree WHERE username='$username' passwort='$passwort' ordner='$ordner'";
$result mysql_query($sql);

while (
$res $result->fetch_assoc($username))
    {
    
$ordner $res['ordner'];
    }

$count mysql_num_rows($result);

if(
$count==1)
    {
    
session_register("username");
    
session_register("passwort");
    
header("location: $ordner");
    }
    
    else    
        {
        
header("location: error.php");
        } 
Mit Zitat antworten
  #6 (permalink)  
Alt 09.04.2011, 18:10
Benutzerbild von mantiz
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 25.02.2007
Beiträge: 2.844
mantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz sein
Standard

Hast Du Dir Dein SQL-Statement einmal genauer angesehen bzw. dies mal manuell z.B. per phpMyAdmin ausprobiert?

Und vergleiche das Statement aus Deinem letzten Post einmal mit dem aus dem ersten Post.
Mit Zitat antworten
  #7 (permalink)  
Alt 09.04.2011, 18:21
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 15.11.2009
Beiträge: 132
andre-ne befindet sich auf einem aufstrebenden Ast
Standard

Ach ja ich hab bei den Tabellennamen geändert, deswegen

Manuell habe ich das ganze nicht ausprobiert.

Bei dem Link den du mir gegeben hast, finde ich auch keine Abfrage wo das Feld abhänigig von einem anderen Feld abgefragt wird. Dies wäre bei mir wie du siehst der Fall (ein User hat ein bestimmten Ordner).
Mit Zitat antworten
  #8 (permalink)  
Alt 09.04.2011, 18:47
Benutzerbild von mantiz
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 25.02.2007
Beiträge: 2.844
mantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz seinmantiz kann auf vieles stolz sein
Standard

Zunächst brauchst Du die Spalten für den Ordner-Namen nicht explizit angeben, "SELECT * " sagt ja gerade, dass Du alle Spalten zurückgeliefert haben möchtest, was die Spalte mit den Ordner-Namen selbstverständlich einschließt.

Bzgl. des geänderten Statements meinte ich nicht den Namen der Tabelle, sondern vielmehr die Tatsache, dass Du im ersten Post noch korrekterweise ein "AND" zwischen "username" und "password" geschrieben hast, welches beim zweiten einfach mal fehlt.

Das Statement des ersten Posts kann also einfach unverändert bleiben, da dies bereits auf Benutzername und Passwort selektiert und alle Spalten zurückliefert.

Dieser Teil
PHP-Code:
while ($res $result->fetch_assoc($username))
    {
    
$ordner $res['ordner'];
    } 
ist so auch nicht korrekt, weil das einfach blind rauskopiert ist.
Beim Quakenet-Tutorial wird mit mysqli gearbeitet, welches Dir einen objektorientierten Zugriff auf die DB liefert, Du aber die Standard-MySQL-Funktionen verwendest.

Korrekt könnte es also z.B. so lauten:
PHP-Code:
$username $_POST['username'];
$passwort md5($_POST['passwort']);

$username stripslashes($username);
$passwort stripslashes($passwort);
$username mysql_real_escape_string($username);
$passwort mysql_real_escape_string($passwort);

$sql="SELECT * FROM loginfree WHERE username='$username' AND passwort='$passwort'";
$result mysql_query($sql);

$count mysql_num_rows($result);

if(
$count==1)
    {
    
session_register("username");
    
session_register("passwort");
    
$res mysql_fetch_assoc($result);
    
header("location: {$res['ordner']}");
    }
    
    else    
        {
        
header("location: error.php");
        } 
Ist zwar auch noch nicht "schön", aber sollte so erstmal funktionieren.

BTW: Den Link zum Quakenet-Tutorial habe ich Dir nicht gegeben, damit Du da blind etwas rauskopierst, sondern damit Du Dir die Basics aneignest, denn wenn Du die könntest, hättest Du das aktuelle Problem überhaupt nicht.
Mit Zitat antworten
  #9 (permalink)  
Alt 09.04.2011, 23:42
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 15.11.2009
Beiträge: 132
andre-ne befindet sich auf einem aufstrebenden Ast
Standard

Manchmal seh ich den Wald vor lauter Bäumen nicht

Das funktioniert
Danke
Mit Zitat antworten
Sponsored Links
Antwort

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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 aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
php if Abfrage ob mysql ein Ergebnis bringt paracelsus Serveradministration und serverseitige Scripte 15 13.02.2012 20:35
PHP liefert bei mySQl Abfrage "bool(false)" BNightSpeeder Serveradministration und serverseitige Scripte 2 25.02.2010 18:28
Abfrage von zwei Tabellen (php/ mysql) Baronesse Serveradministration und serverseitige Scripte 1 15.07.2008 11:26
Dateien auslagern - Include und PHP ArcVieh Serveradministration und serverseitige Scripte 17 27.03.2008 18:09
Buchempfehlung für PHP und MySQL Einstieg Crizzo Ressourcen 4 04.08.2007 19:57


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:03 Uhr.