Avatar billede syswatch Novice
20. marts 2002 - 16:31 Der er 8 kommentarer og
2 løsninger

Warning: Undefined variable ???????

Hvorfor får jeg denne fejl på min egen server og ikke på min udbyders server ? Jeg bruger PHP 4.1.2 min udbyder bruger en lidt ældre udgave... Hvad skal jeg ændre for at få denne fejl væk ?????

<HTML>
<HEAD>
<META NAME="Generator" CONTENT="Stone's WebWriter 3.5">
<TITLE>MySql søger</TITLE> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
</HEAD>

<BODY BGCOLOR="#FFFFFF" TEXT="#000000">
<form action="info.php" method="post"><FONT FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="1">
Søg: <input type="text" name="seek"> <input type="submit" name="sog" value="Søg"></FONT></form>
<p><FONT FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="1">
  <?
if ($seek) {

$host          =        "localhost";
$loginname  =        "";
$password    =        "";
$database    =        "";

mysql_connect("$host", "$loginname", "$password") or die (mysql_error());
mysql_select_db("$database") or die (mysql_error());

$sql = mysql_query("select * from katalog where keyword like '%$seek%'");
$number = mysql_num_rows($sql);
print  "Din søgning på: <b>$seek</b> gav $number resultater<br><br>";

while ($row = mysql_fetch_array($sql)) {
print "$row[1] <a href=katalog/s$row[2].htm>$row[2]</A><br><br>";
}
}elseif ($sog) {
print "Du skrev ikke noget søgeord!!";
} else {
}
?>
  </FONT></p>
</BODY>
</HTML>
Avatar billede syswatch Novice
20. marts 2002 - 16:31 #1
Warning: Undefined variable: seek in c:\webserver\apache\htdocs\seek.php on line 12

Warning: Undefined variable: sog in c:\webserver\apache\htdocs\seek.php on line 29
Avatar billede fiskerendk Nybegynder
20. marts 2002 - 16:35 #2
Har du installeret MySQL server på din egen server??
Avatar billede otis Nybegynder
20. marts 2002 - 16:36 #3
sæt din warning level ned, eller brug isset
Avatar billede otis Nybegynder
20. marts 2002 - 16:36 #4
eks.
if(isset($seek)){
Avatar billede otis Nybegynder
20. marts 2002 - 16:37 #5
ellers sæt et @ foran dine variabler
Avatar billede repsac Nybegynder
20. marts 2002 - 16:38 #6
Hvad med blot at ændre din php.ini?

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Error handling and logging ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; error_reporting is a bit-field.  Or each number up to get desired error reporting level
; E_ALL    - All errors and warnings
; E_ERROR  - fatal run-time errors
; E_WARNING  - run-time warnings (non fatal errors)
; E_PARSE  - compile-time parse errors
; E_NOTICE  - run-time notices (these are warnings which often result from a bug in
;      your code, but it's possible that it was intentional (e.g., using an
;      uninitialized variable and relying on the fact it's automatically
;      initialized to an empty string)
; E_CORE_ERROR  - fatal errors that occur during PHP's initial startup
; E_CORE_WARNING - warnings (non fatal errors) that occur during PHP's initial startup
; E_COMPILE_ERROR - fatal compile-time errors
; E_COMPILE_WARNING - compile-time warnings (non fatal errors)
; E_USER_ERROR  - user-generated error message
; E_USER_WARNING - user-generated warning message
; E_USER_NOTICE  - user-generated notice message
; Examples:
; error_reporting = E_ALL & ~E_NOTICE      ; show all errors, except for notices
; error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR ; show only errors
error_reporting = E_ALL & ~E_NOTICE  ; Show all errors except for notices

Tilpas det så du får de fejl du ønsker!
Avatar billede jakoba Nybegynder
20. marts 2002 - 16:39 #7
Du har ikke defineret dine variable $seek og $sog

php kan indstilles til (ligesom IE) at være flink og ikke gøre opmærksom på når du laver fejl.
Resultatet er at du opfordres til at lave lortekode.

linie 12:
    if ( isset($seek) ) {
linie 29:
    }elseif ( isset($sog) ) {

mvh JakobA
Avatar billede otis Nybegynder
20. marts 2002 - 16:39 #8
"sæt din warning level ned, eller brug isset"
hvis det der gælder for et svar, så gør det ^^ også :P
Avatar billede brilleaben Nybegynder
21. marts 2002 - 10:26 #9
I php-4.1.x bliver form variabler ikke sat i Global scope pr. default.  Dette betyder, at alle variabler fra forms findes i $HTTP_POST_VARS arrayet.  Dvs. $sog findes som $HTTP_POST_VARS["sog"]    Enten ændrer du dit script eller også sætter du 'register_globals=on' i din php.ini (men læs lige hvorfor den er sat til 'off' inden du ændrer noget, ikk'  :-)
Avatar billede brilleaben Nybegynder
21. marts 2002 - 10:26 #10
$HTTP_POST_VARS ved method="post"  og  $HTTP_GET_VARS ved method="get"
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

IT-JOB

Netcompany A/S

Linux Operations Engineer

AL Sydbank A/S (tidligere Arbejdernes Landsbank)

Tech Lead til Datacenter Operations

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Cyberdivisionen søger chef for Lokal IT i hovedstadsområdet