---
title: "Kan någon hitta felet?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/82022-kan-någon-hitta-felet"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "jiggan"
published: "2003-07-15T11:33:21.000Z"
updated: "2003-07-24T11:45:24.000Z"
replies: 13
views: 332
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/82022-kan-någon-hitta-felet"
---

# Kan någon hitta felet?

## #1 — jiggan, 2003-07-15T11:33Z

detta felet kommer upp när man registrerat sig och försöker logga in...

Parse error: parse error, expecting \`T_STRING' or \`T_VARIABLE' or \`T_NUM_STRING' in C:\\apache\\htdocs\\check_login.php on line 6

koden ser ut så här: 

\<?php
session_start();  

$link = mysql_connect ("127.0.0.1", "root", "");
mysql_select_db("test", $link);
$sql="SELECT user FROM users WHERE user=$\_POST\['user'\] AND pass1=$\_POST\['pass'\]
$resultat = mysql_query($sql, $link);

if(mysql_num_rows($resultat)==0)
{
header("Location: index.php);  
exit;  
}
else
{
  $\_SESSION\['status'\] = "online";
  $\_SESSION\['userid'\] = $resultat\['userid'\];  

header("Location: user_index.php");
} 

?\>  
\<?php
mysql_close ($link);
?\>

någon som kan se felet? 

mvh
/
jiggan

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

## #2 — Kent.J, 2003-07-15T11:36Z

> $sql="SELECT user FROM users WHERE user=$\_POST\['user'\] AND pass1=$\_POST\['pass'\]

 

Saknas "; på slutet

dvs

```php
$sql="SELECT user FROM users WHERE user=$_POST['user'] AND pass1=$_POST['pass']";
```

Och använd \[php\]... snälla?  :bire

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

## #3 — Nexus86, 2003-07-15T11:36Z

Raden 

```php
$sql="SELECT user FROM users WHERE user=$_POST['user'] AND pass1=$_POST['pass']
```

 ska vara 

```php
$sql="SELECT user FROM users WHERE user='".$_POST['user']."' AND pass1='".$_POST['pass']."'";
```

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

## #4 — dectgap, 2003-07-15T11:39Z

Du avslutar aldrig SQL-satsen. Dessutom måste du i SQL-satsen visa att POST-variablerna är strängar. Sedan är det onödigt att använda *mysql_close()*

```php
<?php 
session_start(); 

$link = mysql_connect ("127.0.0.1", "root", ""); 
mysql_select_db("test", $link); 
$sql="SELECT user FROM users WHERE user='".$_POST['user']."' AND pass1='".$_POST['pass']."'";
$resultat = mysql_query($sql, $link); 

if(mysql_num_rows($resultat)==0) 
{ 
header("Location: index.php); 
exit; 
} 
else 
{ 
$_SESSION['status'] = "online"; 
$_SESSION['userid'] = $resultat['userid']; 

header("Location: user_index.php"); 
} 

?>
```

EDIT:
Massor av folk (två) hade redan hunnit svara ser jag.

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

## #5 — Kent.J, 2003-07-15T11:48Z

mysql_close() är väl fel och klaga på, skall det vara rätt så skall det vara rätt :)

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

## #6 — jiggan, 2003-07-15T11:48Z

Nexus86:s exempel fungerade "bäst"...jag fick nämligen ett annat meddelande nu ;)

Parse error: parse error, expecting \`T_STRING' or \`T_VARIABLE' or \`T_NUM_STRING' in C:\\apache\\htdocs\\check_login.php on line 16

nu ser koden ut så här:  

\<?php
session_start();  

$link = mysql_connect ("127.0.0.1", "root", "");
mysql_select_db("test", $link);
$sql="SELECT user FROM users WHERE user='".$\_POST\['user'\]."' AND pass1='".$\_POST\['pass'\];
$resultat = mysql_query($sql, $link);

if(mysql_num_rows($resultat)==0)
{
header("Location: index.php);  
exit;  
}
else
{
  $\_SESSION\['status'\] = "online";
  $\_SESSION\['userid'\] = $resultat\['userid'\];  

header("Location: user_index.php");
} 

?\>  
\<?php
mysql_close ($link);
?\>

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

## #7 — dectgap, 2003-07-15T11:53Z

mysql_close() gör ju ingen skada, men som sagt är det onödigt att ha med.

Raden med SQL-satsen är fortfarande inte helt rätt:

```php
$sql="SELECT user FROM users WHERE user='".$_POST['user']."' AND pass1='".$_POST['pass']."'";
```

Sen undrar jag vad $resultat\['userid'\] ska ge för något.

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

## #8 — Peeer, 2003-07-15T11:55Z

> **jiggan skrev:**
>
> Nexus86:s exempel fungerade "bäst"

Varför kör du inte på hans kod då? Du har fortfarande en felaktig sql-sats.

```php
$sql="SELECT user FROM users WHERE user='".$_POST['user']."' AND pass1='".$_POST['pass']."'";
```

Vilken är rad 16?

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

## #9 — jiggan, 2003-07-15T12:02Z

min sql sats är precis som dem ni skrivit ovan...
men jag får meddelande om rad 16 ju...

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

## #10 — dectgap, 2003-07-15T12:04Z

Nä, de ser inte exakt likadana ut.
Nexus86 råkade skriva fel först, och redigerade sitt inlägg, så därför har du fortfarande fel.

Raderna skiljer sig åt i slutet.

EDIT: Eller... det är nog $resultat\['user_id'\] som gör felet.
Som jag tidigare frågade: vad är det tänkt att du ska få ut ifrån det?

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

## #11 — jiggan, 2003-07-15T12:17Z

jag ska slänga in det i databasen och använda  för att få unika sidor för användarna...ska fixa till det...

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

## #12 — K@llen, 2003-07-15T12:20Z

> **jiggan skrev:**
>
> jag ska slänga in det i databasen och använda  för att få unika sidor för användarna...ska fixa till det...

Jo, men du hämtar aldrig värdet i sql-frågan. Du hämtar bara user. ;)

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

## #13 — dectgap, 2003-07-15T12:32Z

För det första hämtar du aldrig *userid* ifrån tabellen, och för det andra försöker du ändå hämta värdet på fel sätt. *$resultat* innehåller mysql-svaret, och sedan måste du använda någon funktion (t ex *mysql_fetch_array()*) för att hämta information ifrån mysql-svaret.

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

## #14 — Nexus86, 2003-07-24T11:45Z

Ett fel är raden 

```php
header("Location: index.php);
```

Den ska vara 

```php
header("Location: index.php");
```

D.v.s du glömde avsluta strängen. :)

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

---

Tråden på webben: https://www.webforum.nu/amne/php/82022-kan-någon-hitta-felet
