Avatar billede windmaker Nybegynder
30. oktober 2004 - 18:01 Der er 7 kommentarer

Et par simple spørgsmål

Jeg har et par småting i mit tidsbestillingssystem som ikke virker håber nogen kan se fejlen i koden.
1:
<?php
header("Location: http://www.4test.frak.dk/booking.php?by=".$by."&dato=".$.dato.);
?>
Hvad er commandoen for at sætte dato og by til en værdi ?
Selvfølgelig inden jeg kalder link. F.eks:
$dato = 11/05
$by = odense

2: Den giver en fejlmelding men jeg kan ikke se den, og ved submit er det muligt at gøre sådan at den sætter $booked til en værdi i DB ?
Er lidt i tvivl om SELECT SQl sætningen nogen der kan bekræfte eller ?

//booking.php
<table>
  <tr>
    <td bgcolor="#C0C0C0">Navn:</td>
    <td bgcolor="#C0C0C0">Telefon:</td>
    <td bgcolor="#C0C0C0">E-Mail:</td>
    <td bgcolor="#C0C0C0">Post-nr:</td>
    <td bgcolor="#C0C0C0">Inviteret af:</td>
  </tr>
<?php
$by = $_GET['by'];
$dato = $_GET['dato']
$db = mysql_connect("localhost","4test","s2e350");
mysql_select_db ("4test");
$result = mysql_query("SELECT * FROM scanning WHERE (((scanning.by)="$by") AND ((scanning.dato)="$dato")) );
while ($row = mysql_fetch_assoc($result)) {
$navn=$row['navn'];
$telefon=$row['telefon'];
$email=$row['email'];
$postnr=$row['postnr'];
$inviteret=$row['inviteret'];
$booked=$row['booked'];
if($booked == "booked") {
      print "<tr><td>".$navn."</td><td>".$telefon."</td><td>BOOKED !</td></tr>";
} else { print "<tr><td>".$sted."</td><td>".$tid."</td><td>";
      print "<form action=\"book.php?sted=".$sted."&tid=".$tid."\" method=\"post\">";
      print "Dit navn:<input type=\"text\" name=\"navn\" size=\"50\"><br>";
            print "Dit Tlf nr:<input type=\"text\" name=\"telefon\" size=\"50\"><br>";
      print "Din email:<input type=\"text\" name=\"email\" size=\"50\"><br>";
            print "Dit postnr:<input type=\"text\" name=\"postnr\" size=\"50\"><br>";
            print "Inviteret af:<input type=\"text\" name=\"inviteret\" size=\"50\"><br>";
      print "<input type=\"submit\" value=\"booked\"></td></tr>";
  }
}
?>
</table> 

Håber nogen kan hjælpe På forhånd tak :)
Avatar billede windmaker Nybegynder
30. oktober 2004 - 18:02 #1
Ja glemte helt at sige er lidt i tvivl om at insert de værdier med den valgte form i DB nogen der har en nem løsning på den ?
:)
Avatar billede jakoba Nybegynder
30. oktober 2004 - 18:41 #2
Det er faktisk så simpelt spm du skriver det. Men der er et par ting der kan gå galt med:

    $dato = 11/05
    $by = odense

1) ALLE php sætninger skal afsluttes med et semikolon tegn.

    $dato = 11/05;
    $by = odense;

2) når du skriver er strengværdi skal der stå anførselstegen onkring:

    $dato = "11/05";
    $by = "odense";

3) og endelig er der en hel del bogstaver der kan lave rav i den når man prøver at skrive dem i en urlparameter. fx er '/' sådan et tegn, det bruges jo også i internetadressen til at adskille mappe og filnavne. Så strengene skal URL-enkodes for at kunne sende den slags tegn med:

    $dato = "11/05";
    $dato = urlencode( $dato );      // sørg for at specialtegn bliver kodet
    $by = "odense";
    $by = urlencode( $by );          // sørg for at specialtegn bliver kodet (§1§)

§1§  Egentlig er det ikke nødvendigt at urlencode "odense" for der er ingen specialle teg i den streng. men jeg gør det alligevel ALTID for en sikkerheds skyld. det skader ikke.

  læs mere her om url enkoding: http://dk.php.net/manual/en/function.urlencode.php

mvh JakobA
Avatar billede pallotto Nybegynder
30. oktober 2004 - 19:12 #3
$result = mysql_query("SELECT * FROM scanning WHERE (((scanning.by)="$by") AND ((scanning.dato)="$dato")) );

ved ikke helt hvad det er du vil med den kode. men jeg har da et bud,

$result = mysql_query("SELECT * FROM scanning WHERE by='$by' AND dato='$dato' );

hvad siger den, til den?
Avatar billede windmaker Nybegynder
30. oktober 2004 - 22:15 #4
Det jeg vil med koden er at vælge alt fra den tabel der hedder scanning og hvor det osse passer på by og dato som er med fra det link :)
F.eks. i siden før vælger man en dato og tid, og her blir så vist alle tider som passer på byen og tiden
Avatar billede Slettet bruger
31. oktober 2004 - 06:26 #5
Pas på med at bruge ordet by som feltnavn i en database, for det er et reserveret ord. Det bruges til ORDER BY og GROUP BY.
Avatar billede bojo Nybegynder
31. oktober 2004 - 08:05 #6
Der er to . for meget her

1:
<?php
header("Location: http://www.4test.frak.dk/booking.php?by=".$by."&dato=".$.dato.);
?>

ret til

&dato=".$dato
Avatar billede windmaker Nybegynder
02. november 2004 - 01:04 #7
ok takker, skal jeg ikke accepte den :)
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