Avatar billede human Nybegynder
06. februar 2003 - 03:56 Der er 21 kommentarer og
2 løsninger

Noget virkelig weird!

Hejsa der!

Jeg har et kæmpe problem med min hjemmeside efter jeg har flyttet den over på min egen server.

Fx, i gæstebogen når trykker "skriv indlæg", så er det meningen at den skal komme frem med formen men skal skrive i (den kommer forresten bare frem med en echo).

Men hvorfor er det lige det virker på mit webhotel men ikke min egen server, det må da næsten have noget at gøre med min opsætning af serveren eller..?

Kan godt prøve at komme med kilden til de ting der ikke virker, men der er jo ikke noget ivejen med koden, eller er der..? :/
Avatar billede carsten_lusk Nybegynder
06. februar 2003 - 04:02 #1
Understøtter din egen server PHP ??
Ellers kan du hente den her www.php.net
Avatar billede carsten_lusk Nybegynder
06. februar 2003 - 04:02 #2
lidt nærmere her -> http://www.php.net/downloads.php
Avatar billede human Nybegynder
06. februar 2003 - 04:03 #3
yesh der gør den
Avatar billede human Nybegynder
06. februar 2003 - 04:04 #4
yesh det gør den
Avatar billede nomak Nybegynder
06. februar 2003 - 07:36 #5
må vi se lidt kode? tror jeg ved hvad problemet er!
Avatar billede human Nybegynder
06. februar 2003 - 08:15 #6
Du får hele lortet for har ingen idé om hvad der kan være ivejen, når den virker på en anden server.

Gæstebogen:

<?
$pr_side = "3";

 
include("conn.php");


if (!isset($s)) {
    $s = "0";
}

#gem
if ($_POST) {

$comm = stripslashes($comm);
$comm = str_replace("\"","&quot;",$comm);
$comm = str_replace("<","&lt;",$comm);
$comm = str_replace(">","&gt;",$comm);
$comm = str_replace("\n","<BR>",$comm);
$comm = str_replace("\\","&#92;",$comm);
$comm = str_replace("http://","",$comm);
$comm = ereg_replace("((w{3}|W{3})+.[a-zA-Z0-9:%_.~#-?&]+)",  "<a href=\"http://\\1\" CLASS=\"tekstlink\" TARGET=\"_blank\">\\1</a>",$comm);
$comm = ereg_replace("([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+.[a-zA-Z0-9._-]+)", "<a href=\"mailto:\\1\" CLASS=\"tekstlink\">\\1</a>",$comm);
$comm = str_replace("'","&#39;",$comm);

$insert = "INSERT INTO gb(tid,navn,email,comm)
        VALUES(NOW(),'$navn','$email','$comm')";
mysql_query($insert) || die(mysql_error());
}



echo "<center><a href=\"gaestebog.php?action=skriv\">Skriv indlæg</a> <img src=gb.gif></center><br />";

if($action == "skriv") {
?>

<form action="gaestebog.php" method="post">
<table border="0" cellpadding="5" cellspacing="0">
<tr><td align="right"><font size="-1" face="Verdana">Navn:</font></td><td><input type="text" name="navn" size="15" maxsize="20" style="border-color:#336699" style="color:#336699; style="border-width: thin;"></td></tr>
<tr><td align="right"><font size="-1" face="Verdana">Email:</font></td><td><input type="text" name="email" size="15" maxsize="20" style="border-color:#336699" style="color:#336699; style="border-width: thin;"></td></tr>
<tr><td align="right" valign="top"><font size="-1" face="Verdana">Kommentar:</font></td><td><textarea cols="28" rows="10" name="comm" style="border-color:#336699" style="color:#336699; style="border-width: thin;"></textarea></td></tr>
<tr><td></td><td><input type="submit" value="Send" Class="submit" name="send"></td></tr>
</form>
</table>
<?
}
if($action == "skriv") {
    echo "<br /><br /><hr color=#336699>";   
}



#Gæstebogen
$query = "SELECT * FROM gb ORDER BY tid DESC
        limit $s,$pr_side";
$result = mysql_query($query);
while($row = mysql_fetch_array($result)) {
   
    print "<table>";
    print "<tr>";
    print "<td>";
    print "<b>Navn:</b> $row[navn]<br /></font>";
    print "<b>Email:</b> <a href='mailto:$row[email]'>$row[email]</a><br />";
    print "<font size=-2><b>Tidspunkt:<b> $row[tid]</font>";
    print "</td>";
    print "</tr>";
    print "<td><br />";
    print "$row[comm]";
    print "</td>";
    print "</td>";
    print "</table>";
    print "<hr color=#336699>";   
}

$g_total = mysql_query("select count(*) as total from gb") or die(mysql_error());
$total = mysql_result($g_total,0);


    echo "<br /><br /><center>";


if ($s >= $pr_side) {
$previous_s = $s-$pr_side;
echo "<a href='?s=$previous_s'>Forrige</a> ";
}

$page = 1;
for($start=0; $total > $start; $start=$start+$pr_side){
if ($start != $s) {
echo "<a href='?s=$start'>$page</a> ";
    } else {
echo "$page ";
}
$page++;
}

if ($total > $s+$pr_side) {
$next_s = $s+$pr_side;
echo "<a href='?s=$next_s'>Næste</a>";
}

    echo "</center><br />";



mysql_close($conn);
?>


Mail form:

<form action="" method="post">
<table border="0" cellpadding="5" cellspacing="0">
<tr><td align="right">Navn: </td><td><input type="text" name="feltEt" size="15" maxsize="20" style="border-color:#336699" style="color:#336699; style="border-width: thin;"></td></tr>
<tr><td align="right">Email: </td><td><input type="text" name="feltTo" size="15" maxsize="20" style="border-color:#336699" style="color:#336699; style="border-width: thin;"></td></tr>
<tr><td align="right" valign="top">Besked: </td><td><textarea cols="28" rows="10" name="feltTre" style="border-color:#336699" style="color:#336699; style="border-width: thin;"></textarea></td></tr>
<tr><td></td><td><input type="submit" value="Send" Class="submit" name="send"></td></tr>
</form>
</table>

<?php

if ($feltEt != "") {

   
    $recipient = "michael@ezillians.dk";
       
    $subject = "Mail fra ezillians.dk";
   
    $message .= "Her er felterne fra mailformen:\n";
    $message .= "Navn: $feltEt\n";
    $message .= "Email: $feltTo\n";
    $message .= "Besked: $feltTre\n";

   
    mail($recipient, $subject, $message);
    echo "<center><b>Din mail er nu afsendt! <img src=mail.gif> <br /><br /></b></center>";
}

?>

Synes det er total weird :/
Avatar billede human Nybegynder
06. februar 2003 - 08:18 #7
Evt. link til siden, gik under GB og Kontakt.

http://www.zil.kyed.dk/ezillians/
Avatar billede avminarm Juniormester
06. februar 2003 - 09:23 #8
din
if($action == "skriv") {

skal nok være
if($_GET['action'] == "skriv") {

hvis din prpversion er højere den 4.2.0

og
if ($feltEt != "") {
skal være:
if (!empty($_POST['feltEt'])) {

din mail form mangler en action <form action="" method="post"> skal være evt. <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">

dine mail felterskal alle være $_POST også:

$message .= "Navn: $_POST[feltEt]\n";
$message .= "Email: $_POST[feltTo]\n";
$message .= "Besked: $_POST[feltTre]\n";

det var vist det jeg lige kunne se ;o)
Avatar billede avminarm Juniormester
06. februar 2003 - 09:25 #9
form action der mangler er ved mail delen evt. skal den også hedde gaestebog.php
Avatar billede avminarm Juniormester
06. februar 2003 - 09:33 #10
denne skulle være rettet til:

<?
$pr_side = "3";

 
include("conn.php");


if (!isset($s)) {
    $s = "0";
}

#gem
if ($_POST) { //kan evt. rettes til if(isset($_POST)) {

$comm = stripslashes($comm);
$comm = str_replace("\"","&quot;",$comm);
$comm = str_replace("<","&lt;",$comm);
$comm = str_replace(">","&gt;",$comm);
$comm = str_replace("\n","<BR>",$comm);
$comm = str_replace("\\","&#92;",$comm);
$comm = str_replace("http://","",$comm);
$comm = ereg_replace("((w{3}|W{3})+.[a-zA-Z0-9:%_.~#-?&]+)",  "<a href=\"http://\\1\" CLASS=\"tekstlink\" TARGET=\"_blank\">\\1</a>",$comm);
$comm = ereg_replace("([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+.[a-zA-Z0-9._-]+)", "<a href=\"mailto:\\1\" CLASS=\"tekstlink\">\\1</a>",$comm);
$comm = str_replace("'","&#39;",$comm);

$insert = "INSERT INTO gb(tid,navn,email,comm)
        VALUES(NOW(),'$navn','$email','$comm')";
mysql_query($insert) || die(mysql_error());
}



echo "<center><a href=\"gaestebog.php?action=skriv\">Skriv indlæg</a> <img src=gb.gif></center><br />";

if($_GET['action'] == "skriv") {
?>

<form action="gaestebog.php" method="post">
<table border="0" cellpadding="5" cellspacing="0">
<tr><td align="right"><font size="-1" face="Verdana">Navn:</font></td><td><input type="text" name="navn" size="15" maxsize="20" style="border-color:#336699" style="color:#336699; style="border-width: thin;"></td></tr>
<tr><td align="right"><font size="-1" face="Verdana">Email:</font></td><td><input type="text" name="email" size="15" maxsize="20" style="border-color:#336699" style="color:#336699; style="border-width: thin;"></td></tr>
<tr><td align="right" valign="top"><font size="-1" face="Verdana">Kommentar:</font></td><td><textarea cols="28" rows="10" name="comm" style="border-color:#336699" style="color:#336699; style="border-width: thin;"></textarea></td></tr>
<tr><td></td><td><input type="submit" value="Send" Class="submit" name="send"></td></tr>
</form>
</table>
<?
}
if($_GET['action'] == "skriv") {
    echo "<br /><br /><hr color=#336699>";   
}



#Gæstebogen
$query = "SELECT * FROM gb ORDER BY tid DESC
        limit $s,$pr_side";
$result = mysql_query($query);
while($row = mysql_fetch_array($result)) {
   
    print "<table>";
    print "<tr>";
    print "<td>";
    print "<b>Navn:</b> $row[navn]<br /></font>";
    print "<b>Email:</b> <a href='mailto:$row[email]'>$row[email]</a><br />";
    print "<font size=-2><b>Tidspunkt:<b> $row[tid]</font>";
    print "</td>";
    print "</tr>";
    print "<td><br />";
    print "$row[comm]";
    print "</td>";
    print "</td>";
    print "</table>";
    print "<hr color=#336699>";   
}

$g_total = mysql_query("select count(*) as total from gb") or die(mysql_error());
$total = mysql_result($g_total,0);


    echo "<br /><br /><center>";


if ($s >= $pr_side) {
$previous_s = $s-$pr_side;
echo "<a href='?s=$previous_s'>Forrige</a> ";
}

$page = 1;
for($start=0; $total > $start; $start=$start+$pr_side){
if ($start != $s) {
echo "<a href='?s=$start'>$page</a> ";
    } else {
echo "$page ";
}
$page++;
}

if ($total > $s+$pr_side) {
$next_s = $s+$pr_side;
echo "<a href='?s=$next_s'>Næste</a>";
}

    echo "</center><br />";



mysql_close($conn);
?>


Mail form:

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<table border="0" cellpadding="5" cellspacing="0">
<tr><td align="right">Navn: </td><td><input type="text" name="feltEt" size="15" maxsize="20" style="border-color:#336699" style="color:#336699; style="border-width: thin;"></td></tr>
<tr><td align="right">Email: </td><td><input type="text" name="feltTo" size="15" maxsize="20" style="border-color:#336699" style="color:#336699; style="border-width: thin;"></td></tr>
<tr><td align="right" valign="top">Besked: </td><td><textarea cols="28" rows="10" name="feltTre" style="border-color:#336699" style="color:#336699; style="border-width: thin;"></textarea></td></tr>
<tr><td></td><td><input type="submit" value="Send" Class="submit" name="send"></td></tr>
</form>
</table>

<?php

if (!empty($_POST['feltEt'])) {

   
    $recipient = "michael@ezillians.dk";
       
    $subject = "Mail fra ezillians.dk";
   
    $message .= "Her er felterne fra mailformen:\n";
    $message .= "Navn: $_POST[feltEt]\n";
    $message .= "Email: $_POST[feltTo]\n";
    $message .= "Besked: $_POST[feltTre]\n";

   
    mail($recipient, $subject, $message);
    echo "<center><b>Din mail er nu afsendt! <img src=mail.gif> <br /><br /></b></center>";
}

?>
Avatar billede human Nybegynder
07. februar 2003 - 00:07 #11
Okay, så du siger altså hvis jeg installerede php 4.2.0. Så ville det virke?

Har du ikke et link til et sted jeg kan dl den version, har tjekket php.net. Kan ikke finde den til win.
Avatar billede avminarm Juniormester
07. februar 2003 - 08:06 #12
hvad version har du nu? du kan dl 4.3.0 på www.php.net se under "Windows Binaries" hvis du vil have 4.2.0 kan du finde den her: http://ftp.proventum.net/pub/php/win32/, Men du kan da ligeså godt dl 4.3.0
Avatar billede human Nybegynder
07. februar 2003 - 12:07 #13
Jeg vil hellere køre med 4.2.0. End jeg skal til at ændre i stortset alle de ting jeg har lavet.

Men tak for hjælpen! Du får poing senere :o)
Avatar billede avminarm Juniormester
10. februar 2003 - 11:04 #14
4.3.0 skulle da ikke gerne betyde at du skal ændre noget andet end det med variablerne $_POST og $_GET og det er mere sikkert at brnytte $_POST og $_GET m.fl.
Avatar billede human Nybegynder
17. februar 2003 - 01:28 #15
ja.. men hvad?
Avatar billede human Nybegynder
17. februar 2003 - 01:48 #16
Hmm... JEg har lige tjekket med mit webhotel, og de kører med 4.3.0. Så det MÅ altså være noget i server conf eller php.ini der skal ændres.

Har du nogen idé om hvad der så er ivejen?
Avatar billede sukos Juniormester
17. februar 2003 - 02:01 #17
I din php.ini, kik efter
register_globals = Off
og sæt den til On
Så virker det formodentlig
Avatar billede human Nybegynder
17. februar 2003 - 02:04 #18
LOL, var det det? :o)

Ja så virker det jo :P:P

Takker der!
Avatar billede human Nybegynder
17. februar 2003 - 02:04 #19
smid et svar sukos
Avatar billede sukos Juniormester
17. februar 2003 - 02:06 #20
Det vil nu være bedre, at du ændrer koden så den virker med register_globals = Off, da det er mere sikkert! :O)
Avatar billede human Nybegynder
17. februar 2003 - 02:08 #21
Okay.. Hvis du gider...

Hvorfor er det mere sikkert?
Avatar billede sukos Juniormester
17. februar 2003 - 02:11 #22
Avatar billede avminarm Juniormester
18. februar 2003 - 08:47 #23
den kode jeg lavede skulle gerne køre under 4.3.0
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