Avatar billede sowiho Nybegynder
30. september 2008 - 09:35 Der er 8 kommentarer

header virker ikke i if sætning

jeg har lavet dette men kan ikke få header til at vike. den virker hvis jeg sætter den øverst, men det kommer der ikke noget godt ud af efter som den  skal tage en variable med.

<?php

session_start();

    include("connect_database.php");

if($_GET['page_id'] == 20 && $_SESSION['Sec_Check'] == "True")

{

    $query = mysql_query('SELECT * FROM Produkter WHERE Varenr = "'.$_POST['Varenr_1'].'"');
    $row = mysql_fetch_assoc($query);
    header('location: adminswh.php?page_id=2&Varenr_1='.$row['Varenr'].'');
    exit;
}

?>
Avatar billede pidgeot Nybegynder
30. september 2008 - 09:52 #1
Det tyder gevaldigt på at der er kommet noget output ind et sted.

Kig en ekstra gang om der skulle være nogle blanke linjer der ikke ligger i en <?PHP ?>-blok i connect_databse.php - særligt allerøverst og allernederst.

(Jeg regner ikke med du har udeladt nogle linjer i det ovenstående, men hvis du har, skal du jo også checke for output der)

Hvis du kan få lov at slå PHPs fejlbeskeder til (display_errors=1 i php.ini), bør du få at vide hvorfor header ikke virker, samt hvilken fil og linje outputtet startede i. Det gør det nemmere at finde problemet.
Avatar billede tfswebguy Nybegynder
30. september 2008 - 09:53 #2
æh kan du beskrive lidt nærmere, hvad fejlen er?

En header foregår hører altid hjemme i toppen af sit dokument
Avatar billede michael_stim Ekspert
30. september 2008 - 10:06 #3
Prøv at sætte din session_start() længst op:
<?php
session_start();

Altså uden mellemrum.
Avatar billede sowiho Nybegynder
30. september 2008 - 15:50 #4
jeg skal sende en variable med det der komemr fra sql lignen
Avatar billede sowiho Nybegynder
30. september 2008 - 16:18 #5
det er include('connect_database.php') der laver ballade for hvis jeg udkommenterer den virker det.. men så kan jeg ikke komme i kontakt med db min connect_databse.php ser således ud:

<?php     mysql_connect("localhost", "****", "*****") or die(mysql_error());
        mysql_select_db("****") or die(mysql_error()); ?>
Avatar billede pidgeot Nybegynder
30. september 2008 - 16:46 #6
Dobbeltcheck at der hverken er linjeskift eller mellemrum før <? og efter ?>. Hvis der er det, så får du problemer.
Avatar billede sowiho Nybegynder
30. september 2008 - 16:55 #7
nu har jeg fjernet alle mellem rum der er mulige.. men det hjælper lige fedt. er det en anden måde at gøre det på uden at bruge header
Avatar billede sowiho Nybegynder
30. september 2008 - 20:22 #8
jeg fik det til at virker ved at indsætte ob_start(); øverst
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester