PHP: MySQL DB auslesen.

Fragen zum Thema HTML, JavaScript, PHP
Benutzeravatar
naums
Beiträge: 740
Registriert: Sa Jan 02, 2010 10:40 pm
Kontaktdaten:

Re: PHP: MySQL DB auslesen.

Beitrag von naums » Do Jan 21, 2010 5:44 pm

folgender Fehler tritt auf, wenn ich nach dem IF ein echo($avail); und die; setze:

Code: Alles auswählen

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in D:\HOME\videos\usermanagment.php on line 32
Hier nochmal der Code:

Code: Alles auswählen

<?php
if (is_array($_POST)) {
    $post=$_POST;
}
else 
{
    $post=$HTTP_POST_VARS;
};

if (array_key_exists("User", $post))
{
   $username=$post["User"];
} 
else
{
   die ('User');
};
if (array_key_exists("Pswd", $post))
{
    $pswd=$post["Pswd"];
}
else
{
    die ('Passwort');
}

$connect = mysql_connect('localhost', 'pma', '');
mysql_select_db("naums-proj");

$abfrage = "SELECT username, pswd FROM user WHERE username='naums'";
$ergebnis = mysql_query($abfrage);
$avail = mysql_fetch_array($ergebnis);
if ($pswd==$avail['pswd'])
{
    $login=true;
}
echo($avail);
die;

mysql_close();

if ($login==false)
{
   echo('<HTML><HEAD></HEAD><BODY><SCRIPT Language="javaScript">location.href="index.php?login=3&result='.$result.'";</SCRIPT></BODY></HTML>');
}
if ($login==true)
{
   echo('<HTML><HEAD></HEAD><BODY><SCRIPT Language="javaScript">location.href="index.php?login=1&sess='.$sess.'";</SCRIPT></BODY></HTML>');
}
?>
.globl truth
truth:
mov r0, #42
mov pc, lr

Benutzeravatar
cloidnerux
Moderator
Beiträge: 3125
Registriert: Fr Sep 26, 2008 4:37 pm
Wohnort: Ram (Gibts wirklich)

Re: PHP: MySQL DB auslesen.

Beitrag von cloidnerux » Do Jan 21, 2010 6:00 pm

Deinem "mysql_fetch_array" Aufruf Fehlt anscheined ein Parameter, siehe hier:
http://php.net/manual/de/function.mysql-fetch-array.php
Redundanz macht wiederholen unnötig.
quod erat expectandum

Benutzeravatar
stampuhh
Beiträge: 211
Registriert: Sa Nov 07, 2009 4:39 pm
Wohnort: Paderborn

Re: PHP: MySQL DB auslesen.

Beitrag von stampuhh » Do Jan 21, 2010 6:06 pm

Der ist nicht zwingend. Standard ist BOTH sowie ich das gesehen habe.
Hatte ich mir gestern schon angeschaut weil ich die Funktion noch gar nicht kannte. Bisher hab ich immer nur fetch_row benutzt.

gruß stampuhh
NachDenkSeiten.de

Benutzeravatar
naums
Beiträge: 740
Registriert: Sa Jan 02, 2010 10:40 pm
Kontaktdaten:

Re: PHP: MySQL DB auslesen.

Beitrag von naums » Do Jan 21, 2010 6:08 pm

äh... in der Fehlermeldung ist doch die Rede davon, dass der 1. Parameter ein Boolean ist (=$ergebnis ist Boolean)

Als ich aber mithilfe von echo den Wert von $ergebnis ausgeben will, wird nichts ausgegebn.
.globl truth
truth:
mov r0, #42
mov pc, lr

Benutzeravatar
naums
Beiträge: 740
Registriert: Sa Jan 02, 2010 10:40 pm
Kontaktdaten:

Re: PHP: MySQL DB auslesen.

Beitrag von naums » Do Jan 21, 2010 6:10 pm

und der 2. Parameter ist optional.
.globl truth
truth:
mov r0, #42
mov pc, lr

Benutzeravatar
Dubbel
Beiträge: 197
Registriert: So Jul 06, 2008 6:25 pm
Wohnort: Kopenhagen
Kontaktdaten:

Re: PHP: MySQL DB auslesen.

Beitrag von Dubbel » Do Jan 21, 2010 7:10 pm

Probier mal anstatt mysql_fetch_array() mysql_fetch_assoc() aus...
PHP Manual hat geschrieben:mysql_fetch_assoc() entspricht in der Funktionsweise exakt dem Aufruf von mysql_fetch_array() mit Angabe von MYSQL_ASSOC als optionalen zweiten Parameter.
Mit der anderen Funktion hab ich nämlich auch noch nie gearbeitet ^^

Abgesehen davon würde ich deine Spalten- und Tabellennamen immer in ` setzen, damit MySQL keine Probleme mit reservierten Wörtern hat...das hat mich schon so manche Stunden gekostet ;)
Also in deinem Fall:

Code: Alles auswählen

$abfrage = "SELECT `username`, `pswd` FROM `user` WHERE `username`='naums'";
Edit: Bist du sicher, dass ein DB-Eintrag mit dem username naums existiert? Wenn dieser nicht existiert, dann würde mysql_fetch_array() ja FALSE zurückgeben, was die BOOL-Variable erklären würde...

Benutzeravatar
naums
Beiträge: 740
Registriert: Sa Jan 02, 2010 10:40 pm
Kontaktdaten:

Re: PHP: MySQL DB auslesen.

Beitrag von naums » Fr Jan 22, 2010 10:42 am

ja den müsste es geben. den habe ich extra eingetragen. Sag mal macht das einen Unterschied ob ich "naums" oder "NAUMS" eingebe?
.globl truth
truth:
mov r0, #42
mov pc, lr

Benutzeravatar
stampuhh
Beiträge: 211
Registriert: Sa Nov 07, 2009 4:39 pm
Wohnort: Paderborn

Re: PHP: MySQL DB auslesen.

Beitrag von stampuhh » Fr Jan 22, 2010 11:04 am

Guck hier am besten. Es kommt ganz auf den Variablentyp der Spalte und die Formatierung deiner Datenbank an wenn ich das richtig gesehen habe.

gruß stampuhh
NachDenkSeiten.de

Benutzeravatar
naums
Beiträge: 740
Registriert: Sa Jan 02, 2010 10:40 pm
Kontaktdaten:

Re: PHP: MySQL DB auslesen.

Beitrag von naums » Fr Jan 22, 2010 4:07 pm

hm... auch die Spaltennamen und co in ` ` zu setzen hat nichts gebracht. immernoch boolean -.-
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
.globl truth
truth:
mov r0, #42
mov pc, lr

Benutzeravatar
naums
Beiträge: 740
Registriert: Sa Jan 02, 2010 10:40 pm
Kontaktdaten:

Re: PHP: MySQL DB auslesen.

Beitrag von naums » Fr Jan 22, 2010 4:16 pm

ich hab grade bei PHPMyAdmin was entdeckt:

Code: Alles auswählen

UPDATE `naums-proj`.`user` SET `permission` = 'admin' WHERE `user`.`sessID` =1;
also werde ich da jetzt auch mal

Code: Alles auswählen

WHERE `user`.`username`='naums'
benutzen.


PS: klappt immernoch nicht.
.globl truth
truth:
mov r0, #42
mov pc, lr

Antworten