/ 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
php - mysql. hjælp! hvordan gør man??
Fra : Ralle


Dato : 27-09-06 17:56

Hejsa...

når der er noget der er lagt ind i Databasen. ka man godt hente
det, det ka jeg finde ud af!

men man må kun hente det 1 gang ialt, så derfor tænkte jeg på om
man kunne lave en ekstra række i tabellen, og så kalde den
aktiveret, og den skal så som standard stå på 1, (ikk aktiveret,)
og så når den bliver aktiveret kommer den over på 2 (aktiveret)
og så hvis man prøver at skrive koden igen, så skriver den: denne
kode er desværre allerede aktiveret.

i kan downloade det jeg har lavet nu på:
http://video.enzolim.dk/downloads/kode.zip

Ralle - ;D

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Dan Storm (27-09-2006)
Kommentar
Fra : Dan Storm


Dato : 27-09-06 18:45

Ralle skrev:
> men man må kun hente det 1 gang ialt, så derfor tænkte jeg på om
> man kunne lave en ekstra række i tabellen, og så kalde den
> aktiveret, og den skal så som standard stå på 1, (ikk aktiveret,)
> og så når den bliver aktiveret kommer den over på 2 (aktiveret)
> og så hvis man prøver at skrive koden igen, så skriver den: denne
> kode er desværre allerede aktiveret.

væn dig til at bruge 0 og 1 istedet for. Grunden er at 0 = FALSE og 1 =
TRUE i alle sprog. Men istedet for at uddybe nu, så væn dig til at gøre
sådan istedet.

> i kan downloade det jeg har lavet nu på:
> http://video.enzolim.dk/downloads/kode.zip

Det er nok fåtallet her der rent faktisk vil hente din zip fil for
derefter at gå din php fil igennem (såfremt din zip kun indeholder en
fil?) så forvent ikke noget svar på din kode.

Væn dig ligeledes til at have en kopi af den kode vi skal gennemse med
fil ext .phps (f.eks. index.php -> index.phps)

Et eksempel på en løsning til dit spørgsmål ville være:

$query = mysql_query("SELECT code, activated FROM table WHERE
code='".$code."'");

if(mysql_num_rows($query) > 0)
{
   $aktiv = mysql_result($query, 0, "activated");
   if($aktiv == FALSE)
   {
      echo 'Koden er nu aktiveret.';
   }
   else
   {
      echo 'Koden er allerede brugt.';
   }

}
else
{
   echo 'Koden eksisterer ikke.';
}


Ovenstående er ikke testet og er egentlig kun en vejledning til hvordan
du eventuelt kunne konstruere din egen løsning.


--
Dan Storm - storm at err0r dot dk / http://err0r.dk

Tro ikke brugerne vil gøre noget for at undgå dit killfilter
- Så vigtig er du heller ikke!

Mads Lie Jensen (27-09-2006)
Kommentar
Fra : Mads Lie Jensen


Dato : 27-09-06 20:13

On Wed, 27 Sep 2006 19:45:02 +0200, Dan Storm
<shadyz@_REMOVETHIS_err0r.dk> wrote:

>væn dig til at bruge 0 og 1 istedet for. Grunden er at 0 = FALSE og 1 =
>TRUE i alle sprog. Men istedet for at uddybe nu, så væn dig til at gøre
>sådan istedet.

Ikke alle sprog bruger 0 og 1. VBA i Microsoft Access bruger i hvert
fald -1 for true. og så vidt jeg husker smider postgresql-databasen 't'
og 'f' ud for hhv. true og false for et boolean felt.
--
Mads Lie Jensen - mads@gartneriet.dk - ICQ #25478403
Gartneriet - http://www.gartneriet.dk/

Nu endelig med drivhus.

Martin (27-09-2006)
Kommentar
Fra : Martin


Dato : 27-09-06 18:48

Ralle wrote:
> Hejsa...
>
> når der er noget der er lagt ind i Databasen. ka man godt hente
> det, det ka jeg finde ud af!
>
> men man må kun hente det 1 gang ialt, så derfor tænkte jeg på om
> man kunne lave en ekstra række i tabellen, og så kalde den
> aktiveret, og den skal så som standard stå på 1, (ikk aktiveret,)
> og så når den bliver aktiveret kommer den over på 2 (aktiveret)
> og så hvis man prøver at skrive koden igen, så skriver den: denne
> kode er desværre allerede aktiveret.

Du laver bare en update efter din select.

SELECT kode,aktiveret FROM tabel WHERE id = $id
if(aktiveret==2) {
Koden er brugt
} else {
echo kode
UPDATE tabel SET aktiveret = '2' WHERE kode = $kode
}

Dan Storm (27-09-2006)
Kommentar
Fra : Dan Storm


Dato : 27-09-06 18:57

Martin skrev:
> Du laver bare en update efter din select.
>
> SELECT kode,aktiveret FROM tabel WHERE id = $id
> if(aktiveret==2) {
> Koden er brugt
> } else {
> echo kode
> UPDATE tabel SET aktiveret = '2' WHERE kode = $kode
> }

ja, det glemte jeg jo så bare i mit eksempel... hehe

$query = mysql_query("SELECT code, activated FROM table WHERE
code='".$code."'");

if(mysql_num_rows($query) > 0)
{
$aktiv = mysql_result($query, 0, "activated");
if($aktiv == FALSE)
{
echo 'Koden er nu aktiveret.';
   mysql_query("UPDATE table SET activated='1' WHERE code='".$code."'");
}
else
{
echo 'Koden er allerede brugt.';
}

}
else
{
echo 'Koden eksisterer ikke.';
}


--
Dan Storm - storm at err0r dot dk / http://err0r.dk

Tro ikke brugerne vil gøre noget for at undgå dit killfilter
- Så vigtig er du heller ikke!

Ralle (27-09-2006)
Kommentar
Fra : Ralle


Dato : 27-09-06 20:00

> > Du laver bare en update efter din select.
> >
> > SELECT kode,aktiveret FROM tabel WHERE id = $id
> > if(aktiveret==2) {
> > Koden er brugt
> > } else {
> > echo kode
> > UPDATE tabel SET aktiveret = '2' WHERE kode = $kode
> > }
>
> ja, det glemte jeg jo så bare i mit eksempel... hehe
>
> $query = mysql_query("SELECT code, activated FROM table WHERE
> code='".$code."'");
>
> if(mysql_num_rows($query) > 0)
> {
> $aktiv = mysql_result($query, 0, "activated");
> if($aktiv == FALSE)
> {
> echo 'Koden er nu aktiveret.';
>    mysql_query("UPDATE table SET activated='1' WHERE code='".$code."'");
> }
> else
> {
> echo 'Koden er allerede brugt.';
> }
>
> }
> else
> {
> echo 'Koden eksisterer ikke.';
> }
>
>

1. Dan selvfølgelig har jeg ikk kun lagt 1 enkel fil i zip filen. ;D så
ville jeg da have lavet en .txt eller lign.

2. Det virker ik helt som det skal, den skriver ligemeget om koden
eksisterer eller ej at koden eksisterer ikke. og ja jeg har rettet til så
det passer til mit script.

i kan se hvor langt jeg er nåed ved at downloade zip filen på:
http://video.enzolim.dk/downloads/kode2.zip

Ralle

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Martin (27-09-2006)
Kommentar
Fra : Martin


Dato : 27-09-06 21:00

> 2. Det virker ik helt som det skal, den skriver ligemeget om koden
> eksisterer eller ej at koden eksisterer ikke. og ja jeg har rettet til så
> det passer til mit script.

Når du bruger mysql_query - så husker man ALTID at skrive mysql_error()
bagefter....
Fx.

mysql_query("SELECT ....") OR DIE(mysql_error());

Så får du også lidt af vide hvis der skulle gå noget galt.

En anden ting - når du bruger WHERE, så væn dig til at skrive med ' '
rundt om din kode.
Fx.

$sql = "SELECT .... WHERE kode = '".$id."'";

Jeg ved godt det burde virke uden ' ' hvis det er tal, men det er godt
nok sjældent det virker imo. og man er sikker på det virker når man
bruger ' '.

Ralle (28-09-2006)
Kommentar
Fra : Ralle


Dato : 28-09-06 16:03

Tak! fandt fejlen, jeg havde skrevet den skulle lede i $tabel hvor den skulle
have ledt i $table, for $tabel var der ikk noget der hed ;D

Ralle - alt virker fint nu!

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

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

Månedens bedste
Årets bedste
Sidste års bedste