/ 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
script til opdatering af tabel
Fra : Steen Broelling


Dato : 08-03-02 07:14

Hej

Jeg har følgende script, som hiver lidt data ud af en brugertabel:

$query = mysql_query("SELECT id, postnr, initialer FROM OBSERDATA");

while($row = mysql_fetch_array($query)) {
$id = $row["id"];
$postnr = $row["postnr"];
$initialer = $row["initialer"];

echo "$id $postnr $initialer<br>";
}

Disse data skal bruges til at opdatere et andet felt, OBSERKODE, i
samme tabel - indeholdende $postnr og $initialer.
Hvordan er det lige jeg gør det!?? Har forsøgt mig, men kan ikke
rigtig få det til at funke...

Følgende virker selvfølgelig først, når den ved hvilket $id hører til
hvilket $postnr og $initialer:

$query = mysql_query("UPDATE OBSERDATA SET obserkode =
'$postnr$initialer' WHERE id = '$id'");

MVH Steen Brølling
http://www.broelling.dk
"Pete sets the pace to anything..."

 
 
Niels Andersen (08-03-2002)
Kommentar
Fra : Niels Andersen


Dato : 08-03-02 06:18

"Steen Broelling" <strix@mail.dk> wrote in message
news:cdlg8uoch3m23gu0cvh0rm7p7alr57gf9n@4ax.com...
> while($row = mysql_fetch_array($query)) {
> $id = $row["id"];
> $postnr = $row["postnr"];
> $initialer = $row["initialer"];
>
> echo "$id $postnr $initialer<br>";
> }
>
[...]

> Følgende virker selvfølgelig først, når den ved hvilket $id hører til
> hvilket $postnr og $initialer:

Hvorfor skulle den ikke vide det?

> $query = mysql_query("UPDATE OBSERDATA SET obserkode =
> '$postnr$initialer' WHERE id = '$id'");

Lige umiddelbart kan jeg ikke se hvad problemet er. Det skulle da lige være,
hvis du ikke har den linje inde i din while-løkke. Hvis det ikke er det, så
fortæl lige lidt mere om, hvad der går galt.

I øvrigt ville jeg nok gøre netop det der med en enkelt SQL-sætning. Noget
med:
UPDATE OBSERDATA SET obserkode = CONCAT(postnr, initialer);
....så vidt jeg husker.

--
Mvh.

Niels Andersen



Steen Broelling (08-03-2002)
Kommentar
Fra : Steen Broelling


Dato : 08-03-02 11:13

On Fri, 8 Mar 2002 06:18:14 +0100, "Niels Andersen"
<niels-usenet@myplace.dk> wrote:

>I øvrigt ville jeg nok gøre netop det der med en enkelt SQL-sætning. Noget
>med:
>UPDATE OBSERDATA SET obserkode = CONCAT(postnr, initialer);
>...så vidt jeg husker.

Tusind tak - det var lige det der sku' til, fremfor det oldnordiske
påfund jeg havde gang i :)

Nemt og hurtigt!

Et helt andet spørgsmål er så: Jeg har et felt i samme tabel, som
hedder 'password', hvori der ikke er angivet noget ved nogen brugere
endnu - ca. 400 stk.

Hvordan; eller kan man overhovedet indsætte automatisk genererede
passwordkoder i sådant et felt - bare via et bette phpscript!?? Altså
koder som endnu ikke findes...

MVH Steen Brølling
http://www.broelling.dk
"Pete sets the pace to anything..."

Steen Broelling (08-03-2002)
Kommentar
Fra : Steen Broelling


Dato : 08-03-02 12:20

On Fri, 08 Mar 2002 11:13:29 +0100, Steen Broelling <strix@mail.dk>
wrote:

>Et helt andet spørgsmål er så: Jeg har et felt i samme tabel, som
>hedder 'password', hvori der ikke er angivet noget ved nogen brugere
>endnu - ca. 400 stk.
>
>Hvordan; eller kan man overhovedet indsætte automatisk genererede
>passwordkoder i sådant et felt - bare via et bette phpscript!?? Altså
>koder som endnu ikke findes...

Nå. Jeg har selv fundet ud af et eller andet. Følgende skal indsætte
variablen $snabel ( en ny for hver bruger) ind i hver enkelt brugers
password felt:

--
$query = mysql_query("SELECT id FROM OBSERDATA");

while($row = mysql_fetch_array($query)) {
$id = $row['id'];

$snabel = mkPasswd();
//en funktion som genererer et 10 bogstaver langt password//

echo "$id $snabel<br>";
//bare for at se om det virker, og det gør det//

$query = mysql_query("UPDATE OBSERDATA SET password='$snabel' WHERE
id='$id'");

}
--

Den sidste query (UPDATE) indsætter kun password hos én enkelt bruger
hver gang, hvorefter den kommer med en fejl om at "Supplied argument
is not a valid MySQL result resource" - hvorfor det!???

Hvis jeg deaktiverer querien, og kun ser echoen, viser den det hele
perfekt!

MVH Steen Brølling
http://www.broelling.dk
"Pete sets the pace to anything..."

Steen Broelling (08-03-2002)
Kommentar
Fra : Steen Broelling


Dato : 08-03-02 19:32

On Fri, 08 Mar 2002 12:20:17 +0100, Steen Broelling <strix@mail.dk>
wrote:

>--
>$query = mysql_query("SELECT id FROM OBSERDATA");
>
>while($row = mysql_fetch_array($query)) {
>$id = $row['id'];
>
>$snabel = mkPasswd();
>//en funktion som genererer et 10 bogstaver langt password//
>
>echo "$id $snabel<br>";
>//bare for at se om det virker, og det gør det//
>
>$query = mysql_query("UPDATE OBSERDATA SET password='$snabel' WHERE
>id='$id'");
>
>}

Gud fader bevares!! Kender i det at man har lyst til at slå sig selv
tungt oven i hovedet, fordi man bare fumbler for vildt, er træt eller
bare dum!??

For dem som ikke har set fejlen endnu, er det fordi der er to queries.
Den ene hedder query, og den anden skal hedde query2!

Jesus mand...

MVH Steen Brølling
http://www.broelling.dk
"Pete sets the pace to anything..."

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

Månedens bedste
Årets bedste
Sidste års bedste