---
title: "skicka en användare till en sidna direkt?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/185173-skicka-en-användare-till-en-sidna-direkt"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Mycodez"
published: "2010-11-08T22:58:54.000Z"
updated: "2010-11-09T16:32:51.000Z"
replies: 21
views: 806
page: 1
pages: 2
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/185173-skicka-en-användare-till-en-sidna-direkt"
---

# skicka en användare till en sidna direkt?

_Sida 1 av 2._

## #1 — Mycodez, 2010-11-08T22:58Z

Hej,

Jag håller på med en sida här nu där man ska logga in sen om man ahr loggat in korrekt så ska man skickas automatiskt till en sida som heter welcome.php hur gör jag det i denna kod?

```php
<?php
session_start();

require("connect.php");

$post_username = $_POST['username'];
$post_password = $_POST['password'];

if($post_username&&$post_password)
{
if(strlen($post_username)>25||strlen($post_password)>15)
echo "Username or password character length too long!";
else
{
		
//Convert password to md5
$post_password = md5($post_password);
		
//query the database
$login = sprintf("SELECT * FROM users WHERE username='%s' AND password='%s'", mysql_real_escape_string($post_username), mysql_real_escape_string($post_password));
		
$rowcount = mysql_num_rows(mysql_query($login));
$fieldarray = mysql_fetch_assoc(mysql_query($login));
$id = $fieldarray['id'];
		
if ($rowcount==1)
{
//log the user in
$_SESSION['user']=$post_username;
$_SESSION['id']=$id;

echo $_SESSION['user'].", you have been logged in! <a href='index.php'>Return</a> to the main page.";

}
else
echo "Incorrect username or password combination!";
}
}
else
echo "Username and password required!";
?>
```

dett är detta echo meddelande jag vill ha bort alltså 

```php
echo $_SESSION['user'].", you have been logged in! <a href='index.php'>Return</a> to the main page.";
```

mycket tack sam för snabba svar :)

/ Mycodez

\- Tro på din idé annars funkar det inte -

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

## #2 — Pedda, 2010-11-08T23:15Z

Byt ut din echo mot

```php
header("Location: welcome.php");
exit;
```

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

## #3 — Mycodez, 2010-11-08T23:24Z

Okej.
 men när jag gjode det så fick jag detta error meddelande 

Warning: Cannot modify header information - headers already sent by (output started at C:\\xampp\\htdocs\\Learn\\Projekt-VisualUpload\\layout\\Index\\header.php:20) in C:\\xampp\\htdocs\\Learn\\Projekt-VisualUpload\\layout\\Index\\meny.php on line 43

rad 43 är 

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

och hela koden är: 

```php
<table width="1200">
<tr>
<td width="250" valign="top">

<font size="4" face="arial">
Logga In<br>
<hr>
</font>
<u>
<font size="2">
<div align="center">
<?php
session_start();

require("connect.php");

$post_username = $_POST['username'];
$post_password = $_POST['password'];

if($post_username&&$post_password)
{
if(strlen($post_username)>25||strlen($post_password)>15)
echo "Username or password character length too long!";
else
{
		
//Convert password to md5
$post_password = md5($post_password);
		
//query the database
$login = sprintf("SELECT * FROM users WHERE username='%s' AND password='%s'", mysql_real_escape_string($post_username), mysql_real_escape_string($post_password));
		
$rowcount = mysql_num_rows(mysql_query($login));
$fieldarray = mysql_fetch_assoc(mysql_query($login));
$id = $fieldarray['id'];
		
if ($rowcount==1)
{
//log the user in
$_SESSION['user']=$post_username;
$_SESSION['id']=$id;

header("Location: welcome.php");
exit; 

}
else
echo "Incorrect username or password combination!";
}
}
else
echo "Username and password required!";
?>
</u>
<br/><br/>
</div>
</font>
<form action="index.php" method="post">
<table width="250">
<tr>
<td align="right" width="50%">
<font size='2' face='arial'>Användarnamn:</font>
</td>
<td><input type='text' name='username'></td>
</tr>
<tr>
<td align="right">
<font size='2' face='arial'>Lösenord:</font>
</td>
<td>
<input type='password' name='password'>
</td>
</tr>
</table>
<div align="right">
<input type='submit' value='Logga In'>
</div>
</form>
<hr>

<font size="4" face="arial">
<br>
Bli medlem - HELT GRATIS<br>
</font>
<hr>
<font size="2">
<div align="center">
<u>
<?php							
//Register code
if($_POST['submit'])
{
// Grabb submitted data
$firstname = 			strip_tags($_POST['firstname']);
$lastname = 			strip_tags($_POST['lastname']);
$username = 			strtolower(strip_tags($_POST['username'])); 
$password = 			$_POST['password'];
$password_repeat = 		$_POST['password_repeat'];
	
$dob_year = 			$_POST['dob_year'];
$dob_month = 			$_POST['dob_month'];
$dob_day = 				$_POST['dob_day'];
	
$gender = 				$_POST['gender'];
	
if($firstname&&$lastname&&$username&&$password&&$password_repeat&&$dob_year&&$dob_month&&$dob_day&&$gender)
{
//Validate
if(strlen($firstname)>25||strlen($lastname)>25||strlen($username)>25)
echo "Firstname, lastname and username must be no more than 25 characters.";
else 
{
//Check password	
if(strlen($password)>25||strlen($password)<6)
echo "Password must be between 6 and 25 characters";
else {
//Check dob
if(is_numeric($dob_year)&&is_numeric($dob_month)&&is_numeric($dob_day))
{
if(strlen($dob_year)>4||strlen($dob_month)>2||strlen($dob_day)>2)
echo "Date of birth year must be 4 characters, month and day must be 2 characters.";
else
{
if($gender=="Male"||$gender="Female")
{
// compare Password
if($password==$password_repeat)
{
//check dob limits for month and day
if($dob_month>12 ||$dob_day>31)
echo "Date of birth month or day is bigger than expected!";
else
{
//check for existing user
$query = mysql_query("SELECT * FROM users WHERE username='$username'");
if(mysql_num_rows($query)>=1)
echo "That usernmae is already taken!";
else
{
// Sucess! Register the user..
$dob_db = "$dob_year-$dob_month-$dob_day";
$password_db = md5($password);
											
switch ($gender)
{
case "Male":
$gender_db = "M";
break;
case "Female":
$gender_db = "F";
break;
}
											
$register  = mysql_query("INSERT INTO users VALUES ('','$firstname','$lastname','$username','$password_db','$dob_db','$gender_db')");
echo "Sucess!";	
}
}
}
else
echo "Passwords do not match!";
}
else
echo "Gender must be Male or Female!";
}
}
else
echo "Date of birth be in number form. For exemple, 1992/12/28";
}
}	
}
else 
echo "Missing field! Please fill in all fields!";
}
else
echo "Please enter your details and click Register.";
?>
</u>
</div>
</font><br />
<form action='index.php' method='POST'>
<table>
<tr>
<td align='right'>
<font size='2' face='arial'>Förnamn:</font>
</td>
<td>
<input type='text' value='<?php echo  $firstname; ?>' name='firstname' maxlength='25'>
</td>
</tr>
<tr>
<td align='right'>
<font size='2' face='arial'>Efternamn:</font>
</td>
<td>
<input type='text' value='<?php echo  $lastname; ?>' name='lastname' maxlength='25'>
</td>
</tr>
<tr>
<td align='right'>
<font size='2' face='arial'>Användarnamn:</font>
</td>
<td>
<input type='text' value='<?php echo  $username; ?>' name='username' maxlength='25'>
</td>
</tr>
<tr>
<td align='right'>
<font size='2' face='arial'>Lösenord:</font>
</td>
<td>
<input type='password' name='password' maxlength='25'>
</td>
</tr>
<tr>
<td align='right'>
<font size='2' face='arial'>Upprepa lösenord:</font>
</td>
<td>
<input type='password' name='password_repeat' maxlength='25'></td>
</tr>
<tr>
<td align='right'>
<font size='2' face='arial'>Födelsedag:</font>
</td>
<td>
<input type='text' name='dob_year' maxlength='4' size='3' value='<?php if($dob_year) echo $dob_year; else echo "YYYY"; ?>'> / 
<input type='text' name='dob_month' maxlength='2' size='1' value='<?php if($dob_month) echo $dob_month; else echo "MM"; ?>'> / 
<input type='text' name='dob_day' maxlength='2' size='1' value='<?php if($dob_day) echo $dob_day; else echo "DD"; ?>'>
</td>
</tr>
<tr>
<td align='right'>
<font size='2' face='arial'>Kön:</font>
</td>
<td>
<select name='gender'>
<option>Kvinna</option>
<option>Man</option>
</select>
</td>
</tr>
</table>
<div  align='right'><input type='submit' name='submit' value='Registrera'></div>
</form>
<hr>

</td>
```

 NU fick vi visst med registreringen med men men

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

## #4 — Pedda, 2010-11-08T23:29Z

Ok, för att använda header location så får inget skrivas ut på sidan före.
Alltså får ju använda javascript istället.

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

## #5 — Pedda, 2010-11-08T23:31Z

```php
<script type="text/javascript">
window.location = "welcome.php"
</script>
```

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

## #6 — Mycodez, 2010-11-08T23:34Z

okej vad menar du med skriva ut?

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

## #7 — Mycodez, 2010-11-08T23:37Z

och vart ska jag sätta 

```php
<script type="text/javascript">
window.location = "welcome.php"
</script>
```

jag jag sätta det är echo är och ska jag göra något annat med koden?

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

## #8 — Pedda, 2010-11-08T23:43Z

Sätt det där du har din echo.

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

## #9 — aron, 2010-11-09T00:03Z

Nån smart person har sagt nått om lösenord:
<http://www.webforum.nu/showpost.php?p=1498017>

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

## #10 — Pedda, 2010-11-09T00:12Z

> **[Mycodez skrev:](https://www.webforum.nu/p/1522137)**
>
> okej vad menar du med skriva ut?

Innan man kör header location så får inget skrivas ut. Dvs det får inte finnas någon html kod eller någon echo innan.

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

## #11 — aron, 2010-11-09T08:04Z

> **[Pedda skrev:](https://www.webforum.nu/p/1522141)**
>
> Innan man kör header location så får inget skrivas ut. Dvs det får inte finnas någon html kod eller någon echo innan.

I stället för att köra javascript borde han väll ta bort dom utskrifterna och ersätta dem med att byta sida med php-header? Och ha php koden i en egen fil, inte samma som formuläret.

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

## #12 — Pedda, 2010-11-09T08:43Z

Det får han avgöra själv. Jag skulle ha all kod där man kollar inloggning mm i en separat fil och formuläret i en egen fil, men alla gör på olika sätt antar jag.

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

## #13 — Mycodez, 2010-11-09T13:55Z

Hur hade ni gjort login sidan då?

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

## #14 — Mycodez, 2010-11-09T14:00Z

Och var inte mint lösenords skydd säkert nog?

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

## #15 — Pedda, 2010-11-09T14:19Z

> **[Mycodez skrev:](https://www.webforum.nu/p/1522173)**
>
> Och var inte mint lösenords skydd säkert nog?

Du skickar in data från formuläret direkt in i databasen utan att kontrollera vad det innehåller.

Vill du göra det på bästa sätt så använder du PDO och prepared statements istället.

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

## #16 — aron, 2010-11-09T14:22Z

> **[Mycodez skrev:](https://www.webforum.nu/p/1522173)**
>
> Och var inte mint lösenords skydd säkert nog?

Om jag förstod rätt så har du sparat dem som md5 hash, vilket alltså inte är så säkert.

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

## #17 — GunnarD, 2010-11-09T14:55Z

Några kommentarer:

Header() problemet (can not modify header) går att lösa med output buffering <http://php.net/manual/en/function.ob-start.php>

Data formulär skall alltid kontrolleras och rensas innan det skickas in i en sql fråga eller system fråga. Antingen med mysql_real_escape() eller PDO som det skrivits om tidigare i tråden.

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

## #18 — Mycodez, 2010-11-09T14:56Z

japp det har jag ;) 

 men hur funkar dem andra förstår inte på mig dem 

är ganska ny i php ;)

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

## #19 — Mycodez, 2010-11-09T15:41Z

Jag löste det med att skicka användaren till en annan sida ;)

jag gjorde som ni sa gjorde separata filer med php koden :) då funkade det jätte bra ;)

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

## #20 — Mycodez, 2010-11-09T16:14Z

går det använda fler än en header funktion på en och samma sida?

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

---

Tråden på webben: https://www.webforum.nu/amne/php/185173-skicka-en-användare-till-en-sidna-direkt  
Nästa sida: https://www.webforum.nu/amne/php/185173-skicka-en-användare-till-en-sidna-direkt/page2.md
