Avatar billede razzia Nybegynder
04. oktober 2003 - 10:56 Der er 13 kommentarer og
1 løsning

PHP, ved ikke hvad det kan være ?

Jeg har lavet et brugeroprettelses system og er igang med brugersiden til det. MIt problem er så når jeg er inde på brugersiden og fx. skal skrive en nyhed, når man udfylder felterne og trykker "tilføj". Så indsætter den slet ikke dataen ind i databasen.

Det jeg så har prøvet er at tage kun nyheds-koden ud og oprette i et nyt PHP-dokument, også virker det fint.

Koden for det der er årsagen til problemet:

<?
session_start();
?>

<LINK REL="stylesheet" HREF="../style.css" TYPE="text/css">

<BODY BGCOLOR="#DDDCD6">
<?
if (isset($_SESSION['username'],$_SESSION['password'])) {
?>

<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0">
<TR>
    <TD CLASS="bigtxt">Kontrolpanel (<? echo $_SESSION['username']; ?>)</TD>
</TR>
<TR>
    <TD HEIGHT="5"><IMG SRC="../img/streg.gif"></TD>
</TR>
<TR>
    <TD>
   
    <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
    <TR>
        <TD HEIGHT="17" BGCOLOR="#E5E4DF">&nbsp;- <A HREF="usercp.php">Hjem</A> | Ret Profil | <A HREF="usercp.php?action=upload">Upload</A> -&nbsp;</TD>
    </TR>
    <TR>
        <TD></TD>
    </TR>
    <TR>
        <TD>
       
        <?
        if($action == "update"){
            include "ret.php";
        }elseif($action == "upload"){
            include "upload.php";
        }
        ?>
       
        </TD>
    </TR>
    </TABLE>
   
    </TD>
</TR>
</TABLE>

<?
}else{
print "DU HAR IKKE ADGANG!";
}
?>
Avatar billede martinbk Nybegynder
04. oktober 2003 - 11:19 #1
prøv og ændre:
<?
        if($action == "update"){
            include "ret.php";
        }elseif($action == "upload"){
            include "upload.php";
        }
        ?>
til:
<?
        if($action == "update"){
            include("ret.php");
        }elseif($action == "upload"){
            include("upload.php");
        }
        ?>
Avatar billede razzia Nybegynder
04. oktober 2003 - 12:16 #2
Nej det virker ikke på den anden måde
Avatar billede razzia Nybegynder
04. oktober 2003 - 12:27 #3
hjælp har prøvet alt
Avatar billede rapotjau Nybegynder
04. oktober 2003 - 12:30 #4
Prøv at putte en
echo $action;
ind et passende sted hvor du skulle kunne se indholdet...
Avatar billede razzia Nybegynder
04. oktober 2003 - 12:34 #5
Jeg kan sagtens se indholder når man trykker på linket men det er når man skal fx. tilføje en nyhed.

Du kan se det er:

http://iniziate.starthotel.dk/HTX/usercp/usercp.php


(Hvis du prøver at trykke på "upload", så hvis det lykkes for den at tilføje til DB så udskriver den "tilføjet", men det gør den ikke)
Avatar billede rapotjau Nybegynder
04. oktober 2003 - 12:40 #6
Mon ikke det så er noget i tilføj-koden der fejler?
Det jeg kan se af din form ser ok ud
Avatar billede razzia Nybegynder
04. oktober 2003 - 12:43 #7
http://iniziate.starthotel.dk/HTX/usercp/skriv_nyhed.php


Hvis du årøver at tilføje nu så virker det fint...
Avatar billede rapotjau Nybegynder
04. oktober 2003 - 12:44 #8
Ahh... jeg tror måske jeg har fundet noget - har du postet hele indholdet af usercp.php?
For hvis du har skal du være opmærksom på at den "glemmer" $action 's værdi det øjeblik du trykker på Tilføj-knappen...

<form METHOD=POST ACTION="/HTX/usercp/usercp.php">
Avatar billede razzia Nybegynder
04. oktober 2003 - 12:46 #9
okay... du kan lige få indholdet på Nyhedfunktion:

<?
        if($tekst && $overskrift){

        include("mysqlcon.inc");

        $dato = date("d-m-Y H:i");
        $overskrift = ereg_replace("<","&lt;",$overskrift);
        $overskrift = ereg_replace(">","&gt;",$overskrift);
        $overskrift = stripslashes($overskrift);
        $tekst = ereg_replace("<","&lt;",$tekst);
        $tekst = ereg_replace(">","&gt;",$tekst);
        $tekst = stripslashes($tekst);
        $tekst = nl2br($tekst);
            mysql_query("insert into news VALUES ('','$dato','$overskrift','$tekst')");
            print "Tilføjet";
        }else{
        ?>
               
            <FORM METHOD=POST ACTION="<?=$PHP_SELF;?>">

                <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
                <TR>
                    <TD HEIGHT="3"></TD>
                </TR>
                <TR>
                    <TD WIDTH=185>&nbsp;Overskrift:</TD>
                    <TD><INPUT CLASS="loginput" TYPE="text" NAME="overskrift"></TD>
                </TR>
                <TR>
                    <TD WIDTH=185>&nbsp;Nyhed:</TD>
                    <TD><TEXTAREA CLASS="loginput" NAME="tekst"></TEXTAREA></TD>
                </TR>
                <TR>
                    <TD WIDTH=185></TD>
                    <TD><BR><INPUT TYPE="submit" CLASS="loginselect" VALUE="Opret"></TD>
                </TR>
                </TABLE>

            </FORM>
            <?
                }
            ?>
Avatar billede rapotjau Nybegynder
04. oktober 2003 - 12:51 #10
sidste kodestump står i filen usercp.php ?
Det der står i upload.php bliver så vidt jeg kan se ikke includet når du trykker på Tilføj!


Noget helt andet: Hvis du ikke navngiver dine include-filer med .php til sidst kan man se indholdet hvis man kan gætte navnet.
Avatar billede razzia Nybegynder
04. oktober 2003 - 12:55 #11
yup har tilføjet .php til sidst til include nu...

Hvordan får jeg den så til at gøre det når man trykker på Tilføj ?
Avatar billede rapotjau Nybegynder
04. oktober 2003 - 13:00 #12
Altså - når du trykker på "Tilføj" bliver siden loaded igen.

Din form-kode viser at action ikke bliver sat:
<form METHOD=POST ACTION="/HTX/usercp/usercp.php">

Så enten skal du lave noget koder der tjekker om der er trykket på tilføj-knappen. Det gør du i forbindelse med din mysql-kode, hvor du kører en if ($overskrift && $tekst) ...

Ellers skal du få formen til at include en $action-værdi.

2 mulighedder:
1)
Ret til: <form METHOD=POST ACTION="/HTX/usercp/usercp.php?action=upload">

2)
tilføj en:
<input type="hidden" name="action" value="upload"> til din form.
Avatar billede razzia Nybegynder
04. oktober 2003 - 13:08 #13
Jamen jeg takker da mange gange læg et svar og få points
Avatar billede rapotjau Nybegynder
04. oktober 2003 - 13:09 #14
Selvtak & forsat god arbejdslyst :-)
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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