---
title: "Konstigheter med mySQL?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/15709-konstigheter-med-mysql"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Kosse"
published: "2001-06-02T13:57:00.000Z"
updated: "2001-06-03T20:38:00.000Z"
replies: 8
views: 158
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/15709-konstigheter-med-mysql"
---

# Konstigheter med mySQL?

## #1 — Kosse, 2001-06-02T13:57Z

Följande kod verkar inte fungera som det ska och jag fattar inte varför. Letar inte scriptet nedan i alla samtliga rader i tabellen tavlanden och kollar om både användarnman och lösenord är rätt? Verkar helt slumpartat på vilket användarnamn scriptet accepterar eller inte, men oftast fungerar det översta i tabellen.

$link = mysql_connect ("server", "kosse", "lösenordet")
or die ("Kunde inte koppla upp mot databasen.");
mysql_select_db("kosse");

$resultat = mysql_query("SELECT \* FROM tavlanden");

if (mysql_num_rows($resultat) \> 0) {
	while ($row = mysql_fetch_row($resultat)) {
		if ($row\[1\]==$anvandarnamn && $row\[2\]==$losen) 
		{
			setcookie("ianvandarnamn",$anvandarnamn,time()+157680000); //Kakor sättes.
			setcookie("ilosen",$losen,time()+1800);
			header("Location: index.php?ID=tavlandestartsida");
			$finns=1;
			break;
		}
	}
}

if (!$finns) {
		echo "$stil Ditt anv&auml;ndarnamn eller l&ouml;senord &auml;r fel, f&ouml;rs&ouml;k igen.";
}

Permalänk: https://www.webforum.nu/p/15709

## #2 — LarsG, 2001-06-02T15:18Z

Kan du inte lägga in sökningen direkt i sql-frågan? Då slipper du loopen i  programmet.

```
$link = mysql_connect ("server", "kosse", "lösenordet")
or die ("Kunde inte koppla upp mot databasen.");
mysql_select_db("kosse");

$resultat = mysql_query("SELECT * FROM tavlanden where anvandarnamn = '$anvandarnamn' and losen = '$losen'");

if (mysql_num_rows($resultat) > 0) {
setcookie("ianvandarnamn",$anvandarnamn,time()+157680000); //Kakor sättes.
setcookie("ilosen",$losen,time()+1800);
header("Location: index.php?ID=tavlandestartsida");
$finns=1;
break;
}

if (!$finns) {
echo "$stil Ditt användarnamn eller lösenord är fel, försök igen.";
}
```

Använder du rätt arrayindex i ditt program?

Permalänk: https://www.webforum.nu/p/319003

## #3 — Kosse, 2001-06-03T14:59Z

Kunde man skriva så också?, där ser man. Är väldans ny på den hära med mySQL. 

Jag tror jag vet vad som var fel innan, servern måste fått fnatt eftersom jag aldrig stängde kopplingen till databasen. När jag la till det fungerade det som det skulle...

Permalänk: https://www.webforum.nu/p/319004

## #4 — Kosse, 2001-06-03T15:10Z

Förresten, vad är ett arrayindex?

Permalänk: https://www.webforum.nu/p/319005

## #5 — LarsG, 2001-06-03T15:15Z

När du skriver $row\[1\] så är 1 ett arrayindex. Jag bara undrade om de arrayindex du använder när du jämför stämmer med de positioner som kolumnerna har i tabellen.

Permalänk: https://www.webforum.nu/p/319006

## #6 — Kosse, 2001-06-03T15:25Z

Ok, jo dom stämmer. Det har jag kollat.

Permalänk: https://www.webforum.nu/p/319007

## #7 — Kosse, 2001-06-03T16:09Z

Om jag skriver såhär utan whileloop verkar jag inte få några värden i resultat, varför inte? Blir inte $resultat en indexarray precis som $row blev med while loopen?

$resultat = mysql_query("SELECT \* FROM tavlanden where anvandarnamn = '$anvandarnamn' and losen = '$losen'");

Permalänk: https://www.webforum.nu/p/319008

## #8 — LarsG, 2001-06-03T16:19Z

Nej, $resultat är bara ett värde (handle) som du använder för att få tag på posterna. För att hämta en post får man göra 

```
$row = mysql_fetch_row($resultat);
```

Permalänk: https://www.webforum.nu/p/319009

## #9 — Kosse, 2001-06-03T20:38Z

Ok, då fattar jag den biten.
Tackar för hjälpen!

Permalänk: https://www.webforum.nu/p/319010

---

Tråden på webben: https://www.webforum.nu/amne/php/15709-konstigheter-med-mysql
