/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
MySQL inside function = problem!
Fra : Mads Pedersen


Dato : 29-04-01 17:30

Hej folkens,

Jeg har lavet en funktion til opdatering af en MySQL database. Koden virker
fint når den køres i "hoved-scriptet", men når den køres i en funktion så
virker den ikke. Den evaluerer fint, men opdaterer ikke databasen.

Her er funktionen:

function opdater() {
global $userid, $password, $username, $adress, $email, $phonehome,
$phonework, $phonemobile, $icq;
if (form_validated()) {
if (mysql_query("UPDATE hold3personer SET username='$username',
adress='$adress', email='$email', phonehome='$phonehome',
phonework='$phonework', phonemobile='$phonemobile', icq='$icq' WHERE
userid='$REMOTE_USER'")) {
echo "<font color=\"red\"><b>Dine data er
opdateret!</b></font><br>";
display();
} else {
echo "<font color=\"red\"><b>Ikke opdateret!</b></font><br>";
}
} else {
echo "<font color=\"red\"><b>Ikke valideret!</b></font><br>";
edit();
}
}

Hvad går der galt???

// Mads


 
 
Henrik Farre (29-04-2001)
Kommentar
Fra : Henrik Farre


Dato : 29-04-01 23:57

I artikel <B7120E1F.1E4BD%mads@imv.au.dk>, skrev "Mads Pedersen"
<mads@imv.au.dk>:

> Hvad går der galt???

Hvor kalder du functionen?

--
Mvh. / Kind regards
Henrik Farre (enrique@obel.auc.dk)      

Webpage: http://Welcome.to/Webbench
-If I where God, I would recompile the penguin with --enable-flying.

Mads Pedersen (29-04-2001)
Kommentar
Fra : Mads Pedersen


Dato : 29-04-01 18:03

in article 20010429.185647.2046027652.1755@spookcentral.obel.auc.dk, Henrik
Farre at look@my.signature.txt wrote on 30/04/01 00:56:

> Hvor kalder du functionen?
Hovedscriptet ser sådan her ud. Variablen function sættes i en html form i
en af de andre funktioner med $PHP_SELF som action...

connect_to_db();
if ($function=="insert") {
insert();
} elseif ($function=="add") {
add();
} elseif ($function=="edit") {
edit();
} elseif ($function=="opdater") {
opdater();
} else {
display();
}
mysql_close();


Når funktionen skrives direkte i ovenstående virker den fint:

if ($function=="insert") {
insert();
} elseif ($function=="add") {
add();
} elseif ($function=="edit") {
edit();
} elseif ($function=="opdater") {
// opdater();
if (form_validated()) {
if (mysql_query("UPDATE hold3personer SET username='$username',
adress='$adress', email='$email', phonehome='$phonehome',
phonework='$phonework', phonemobile='$phonemobile', icq='$icq' WHERE
userid='$REMOTE_USER'")) {
echo "<font color=\"red\"><b>Dine data er
opdateret!</b></font><br>";
display();
} else {
echo "<font color=\"red\"><b>Ikke opdateret!</b></font><br>";
}
} else {
echo "<font color=\"red\"><b>Ikke valideret!</b></font><br>";
edit();
}

} else {
display();
}


Variabler i funktionen er erklæret med global så det er ikke det - man hvad
så?

// Mads (http://www.doubleloop.dk)
--------------------------------------
Site news 16-03-2001: New photos online in the Freestyle People, Freestyle
Places and Digital Dreams exhibitions. Mmmmmm...
Go check it out @ If thine eye offend thee... http://imv.au.dk/~mads/


Jonas Koch Bentzen (29-04-2001)
Kommentar
Fra : Jonas Koch Bentzen


Dato : 29-04-01 18:56

Mads Pedersen skrev:

> Variabler i funktionen er erklæret med global

Ikke $REMOTE_USER, så vidt jeg kan se.

> // Mads (http://www.doubleloop.dk)

"Din Internet browser er for gammel! Du skal bruge version 4 eller
nyere for at se siden ordentligt."

Min browser (Konqueror 2.2alpha1) er ikke for gammel. Det er nærmere
din browserdetektion eller sans for brugervenlighed*, der er for dårlig.

*) Hvis man laver sådan en "få dig en bedre browser"-side, er det god
skik at lave et link til hovedsiden, sådan at man alligevel kan komme
ind.

--
Venlig hilsen
Jonas Koch Bentzen

Mads Pedersen (29-04-2001)
Kommentar
Fra : Mads Pedersen


Dato : 29-04-01 19:24

in article 9chkhv$2cuj$1@news.cybercity.dk, Jonas Koch Bentzen at
ingen.epostadresse@eksempel.dk wrote on 29/04/01 19:56:

>> Variabler i funktionen er erklæret med global
> Ikke $REMOTE_USER, så vidt jeg kan se.
Det var selvfølgelig det som var galt - tak!


>> // Mads (http://www.doubleloop.dk)
> "Din Internet browser er for gammel! Du skal bruge version 4 eller
> nyere for at se siden ordentligt."
> Min browser (Konqueror 2.2alpha1) er ikke for gammel. Det er nærmere
> din browserdetektion eller sans for brugervenlighed*, der er for dårlig.
Ups... det er vist det som kommer ud af at bruge den indbyggede Browser
Detect funktion i GoLive. Jeg retter selvfølgelig problemet så snart jeg får
tid!

// Mads (http://www.doubleloop.dk)
--------------------------------------
Site news 16-03-2001: New photos online in the Freestyle People, Freestyle
Places and Digital Dreams exhibitions. Mmmmmm...
Go check it out @ If thine eye offend thee... http://imv.au.dk/~mads/


Niels Andersen (30-04-2001)
Kommentar
Fra : Niels Andersen


Dato : 30-04-01 06:33

"Mads Pedersen" <mads@imv.au.dk> skrev i en meddelelse
news:B71228D7.1E689%mads@imv.au.dk...
> >> // Mads (http://www.doubleloop.dk)
> > "Din Internet browser er for gammel! Du skal bruge version 4 eller
> > nyere for at se siden ordentligt."
> > Min browser (Konqueror 2.2alpha1) er ikke for gammel. Det er nærmere
> > din browserdetektion eller sans for brugervenlighed*, der er for dårlig.
> Ups... det er vist det som kommer ud af at bruge den indbyggede Browser
> Detect funktion i GoLive. Jeg retter selvfølgelig problemet så snart jeg
får
> tid!

Mener du at der er fejl i funktionen, eller at du bruger den forkert? :)

Problemet kan løses med en simpel omformulering:

"<p>Tilsyneladende bruger du ikke Netscape eller Internet Explorer version 4
eller højere. Jeg kan desværre ikke finde ud af at lave hjemmesider til
andet, så jeg indgang er på eget ansvar.<br><a href="forsiden">OK, jeg
prøver</a> - <a href="google.com">Damn, nåmn ha' et godt liv</a></p>"

:)


Mvh.

Niels Andersen



Mads Pedersen (30-04-2001)
Kommentar
Fra : Mads Pedersen


Dato : 30-04-01 08:44

in article pO6H6.67698$o4.6002033@news010.worldonline.dk, Niels Andersen at
niels-usenet@myplace.dk wrote on 30/04/01 07:33:

> Mener du at der er fejl i funktionen, eller at du bruger den forkert? :)
>
> Problemet kan løses med en simpel omformulering:
>
> "<p>Tilsyneladende bruger du ikke Netscape eller Internet Explorer version 4
> eller højere. Jeg kan desværre ikke finde ud af at lave hjemmesider til
> andet, så jeg indgang er på eget ansvar.<br><a href="forsiden">OK, jeg
> prøver</a> - <a href="google.com">Damn, nåmn ha' et godt liv</a></p>"
He he...

GoLive har en funktion som automatisk checker koden for at se hvilke
browsere den vil køre på. Det lader til at jeg må bide i det sure æble og
lave det selv.

// Mads


Søg
Reklame
Statistik
Spørgsmål : 177557
Tips : 31968
Nyheder : 719565
Indlæg : 6408872
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste