Avatar billede kennethv Nybegynder
17. oktober 2008 - 12:02 Der er 34 kommentarer og
1 løsning

PHP og HTML blandet.

Hej.

Kan nogen hjælpe mig med et lille program. Jeg skal have en if then else ind på min php side.

Jeg har forsøgt mig, men nu begynder min input text at "skride" i forhold til de andre jeg har lavet. Forstå ikke helt hvorfor. Kan nogen hjælp?

<html>

<head>
<style type="text/css">
  form {}
    fieldset {width: 800px;}
    input {width: 50px;}
    p.TekstElement {position: absolute; left: 650px;}
    p.text {position: absolute; left: 600px;}
    p.CheckBox {position: absolute; left: 670px;}
</style>
</head>
<body>
<form>

<fieldset>
  <legend style="font-weight: bold; font-size: 40px; color: #000;">
    Fratrædelse af medarbejder
  </legend>

<table border="0" width = 800px>
<tr>
<td><br><Font Size=4>I forbindelse med, at <b><?PHP echo $strEmployee; ?></b> fratræder sin stilling d. <b><?PHP echo $strDateOfRetire; ?></b> bedes du udfylde dette skema senest 1 uge før fratrædelsen.</Font><br><br></td>
</tr>

<tr>
  <td>
    <fieldset>
      <legend style="font-weight: bold; font-size: 25px; color: #000;">
        Lotus Notes
      </legend>
      <br><Font Size=4>Din medarbejders mailkonto vil være åben 1 måned efter fratrædelse. Derefter slettes den.<br>
        Mails til din medarbejder kan videresendes til en udvalgt person i de efterfølgene 3 måneder.<br><br>
        <input type="checkbox" name="check" id="check">Mails ønskes videresendt til:</font><p class="text"><input type="text" name="v" style="width:200px" disabled></p>
      <br><br>
      <Font Size=4><b>HUSK DOG, at få <?PHP echo $strEmployee; ?> til at give andre rettigheder til at læse evt. indkomne mails samt at aktivere Out Of Office med info om fremtidig kontaktadresse - inden fratrædelse. (Læs vejledning om dette på Alround.)</b></font>
    </fieldset><br><br>
  </td>
</tr>

<tr>
  <td>
  <fieldset>
      <legend style="font-weight: bold; font-size: 25px; color: #000;">
        Backup af data
      </legend>
      <Font Size=4><p class="TekstElement"><u>Kopi ønskes</u></p>
      <br>Mail database<p class="CheckBox"><input type="checkbox" name="Kopi" id="Kopi"></p>
      <br><br>
      <b>Vi vil dog anbefale at du sammen med <?PHP echo $strEmployee; ?> aftaler hvilke mailhistorik der skal videresendes til dig, da ikke alle informationer er med i kopien.</b></Font>
    </fieldset><br><br>
  </td>
</tr>

<tr>
  <td>
  <fieldset>
      <legend style="font-weight: bold; font-size: 25px; color: #000;">
        AS/400
      </legend><br>
        <Font Size=4>Sletning af bruger vil blive udført. Hvem skal eje evt. objekter:</Font><p class="text"><input type="text" name="v" style="width:200px" disabled></p>
    </fieldset><br><br>
  </td>
</tr>

<tr>
  <td>
  <fieldset>
      <legend style="font-weight: bold; font-size: 25px; color: #000;">
        PC
      </legend><br>
      <Font Size=4><?php echo $strEmployee; ?> er bruger af <?php echo $strComputerName; ?>.</font><br><br> 
      <?php
        if ($strDateOfWarrantyEnded == "")
            echo "<p class=\"text\"><input type=\"text\" name=\"v\" style=\"width:200px\" disabled><br></p>";
            //echo "<input type=\"text\" name=\"v\" style=\"width:200px\" disabled>";
        else
            echo "Da den er udløbet for garanti d. ".$strDateOfWarrantyEnded;
      ?>
    </fieldset>
  </td>
</tr>




</table>
<br><br>
</fieldset>
<br><br>
<input type="submit" value="Submit">
<br><br>


</form>

</body>
</html>
Avatar billede majbom Novice
17. oktober 2008 - 12:08 #1
hvad mener du med at den begynder at skride? ser det forkert ud i browseren eller hvad er problemet?

desuden er <font> deprecated og bør ikke bruges
Avatar billede w13 Novice
17. oktober 2008 - 12:13 #2
Hvilken if-sætning er der tale om?

Er det denne:

      <?php
        if ($strDateOfWarrantyEnded == "")
            echo "<p class=\"text\"><input type=\"text\" name=\"v\" style=\"width:200px\" disabled><br></p>";
            //echo "<input type=\"text\" name=\"v\" style=\"width:200px\" disabled>";
        else
            echo "Da den er udløbet for garanti d. ".$strDateOfWarrantyEnded;
      ?>

?

Måske skal du så ikke have et <p>-tag uden om, hvis du siger, den skrider.
Avatar billede w13 Novice
17. oktober 2008 - 12:13 #3
disabled skal i øvrigt være disabled=\"disabled\" og så mangler du også en gyldig doctype øverst i koden.
Avatar billede kennethv Nybegynder
17. oktober 2008 - 13:46 #4
Ja, jeg tænkte nok at det var noget være rod jeg har fået lavet mig. :)

men, du har ret. Det er den if-sætning. Nu, når jeg lige ser efter. Så skrider den ikke. Den har den rigtige X position, men det er lige som om at den ikke er med <td> </td>.

Rammen omkring skulle gerne følge med i forhold til elementet.
Avatar billede w13 Novice
17. oktober 2008 - 13:49 #5
Hmm. Jeg tror ikke, jeg kan hjælpe dig videre uden at se problemet selv, enten via et link eller et screenshot. Jeg er sikker på, jeg kan se hvad der er galt - men jeg bliver nødt til at se det selv så. =)
Avatar billede kennethv Nybegynder
17. oktober 2008 - 14:24 #6
Jeg kan godt sende dig et screenshot. Hvor til?
Avatar billede w13 Novice
17. oktober 2008 - 14:26 #7
w13 at ofir dot dk
Avatar billede w13 Novice
17. oktober 2008 - 15:04 #8
Hvordan ser if-sætningen ud nu? Har du fjernet p-tag'et så det bare er:

      <?php
        if ($strDateOfWarrantyEnded == "")
            echo "<input type=\"text\" name=\"v\" style=\"width:200px\" disabled><br>";
            //echo "<input type=\"text\" name=\"v\" style=\"width:200px\" disabled=\"disabled\">";
        else
            echo "Da den er udløbet for garanti d. ".$strDateOfWarrantyEnded;
      ?>

?
Avatar billede w13 Novice
17. oktober 2008 - 15:06 #9
Hov, således:

      <?php
        if ($strDateOfWarrantyEnded == "")
            echo "<input type=\"text\" name=\"v\" style=\"width:200px\" disabled=\"disabled\"><br>";
        else
            echo "Da den er udløbet for garanti d. ".$strDateOfWarrantyEnded;
      ?>
Avatar billede kennethv Nybegynder
20. oktober 2008 - 09:26 #10
Nu har jeg puttet det sidste ind som du har skrevet og resultatet er at input er i starten, altså helt til venstre. Jeg vil gerne have at den var under de andre input felter, sådan til højre.
Avatar billede w13 Novice
20. oktober 2008 - 10:16 #11
Så må du vise, hvad din "text"-klasse er sat til. Måske kan du bare lægge class=\"text\" på input-feltet. Men det er ikke til at sige uden CSS-koden.
Avatar billede kennethv Nybegynder
20. oktober 2008 - 10:34 #12
Ikke helt forstået.

Det jeg har gjort er bare at jeg har taget det du har skrevet 17/10-2008 15:06:39 og puttet ind i min if-sætning.

Er der andet du tænker på?
Avatar billede w13 Novice
20. oktober 2008 - 15:25 #13
Ja, jeg skal se, hvad der står i dit CSS-dokument - formodentlig bare et sted, hvor der står noget i stil med:

.text{
  ...
}

Dette påvirkede nemlig p-tag'et, som nu er slettet. Så vi skal lægge det samme på vores input-felt.

Du kan også forsøge med:

      <?php
        if ($strDateOfWarrantyEnded == "")
            echo "<input class=\"text\" type=\"text\" name=\"v\" style=\"width:200px\" disabled=\"disabled\"><br>";
        else
            echo "Da den er udløbet for garanti d. ".$strDateOfWarrantyEnded;
      ?>

Hvis vi er meget heldige, virker det bare.
Avatar billede kennethv Nybegynder
20. oktober 2008 - 15:38 #14
Næ, det virkede ikke. :(

Det er det samme resultat.

Den er til ventre.
Avatar billede w13 Novice
20. oktober 2008 - 15:40 #15
Så skal jeg se den der del af din CSS, jeg beskrev. :)
Avatar billede kennethv Nybegynder
20. oktober 2008 - 15:48 #16
I starten af min tråd er hele koden for det du har set på det screendump du fik, på nær forbindelsen til min DB og til det du lige har skrevet.
Avatar billede w13 Novice
20. oktober 2008 - 16:29 #17
Aah, det hedder:

p.text {position: absolute; left: 600px;}

Derfor fungerer det kun på p-tags.

Prøv med:

      <?php
        if ($strDateOfWarrantyEnded == "")
            echo "<input style=\"margin-left:600px\" type=\"text\" name=\"v\" style=\"width:200px\" disabled=\"disabled\"><br>";
        else
            echo "Da den er udløbet for garanti d. ".$strDateOfWarrantyEnded;
      ?>
Avatar billede kennethv Nybegynder
22. oktober 2008 - 12:34 #18
Ja det virker, men nu driller de andre input sig. Jeg har sendt dig en mail med screendump.
Avatar billede w13 Novice
22. oktober 2008 - 13:01 #19
Jeg tror bare, du skal sætte 600-tallet lidt ned, indtil det passer.
Avatar billede kennethv Nybegynder
22. oktober 2008 - 14:26 #20
Men hvorfor kan man ikke bare sætte

<input style=\"margin-left:600px\" type=\"text\" name=\"v\" style=\"width:200px\" disabled=\"disabled\">

i stedet? For det virker ihvertfald ikke.
Avatar billede kennethv Nybegynder
22. oktober 2008 - 14:28 #21
Du havde ihvertfald ret med bare at sætte tallet ned.
Avatar billede w13 Novice
22. oktober 2008 - 14:42 #22
Hvad er forskellen i den linje og så den før? Jeg er ikke helt med på, hvad den linje skulle gøre frem for den før. =)
Avatar billede w13 Novice
22. oktober 2008 - 14:42 #23
Men godt, at det virker.
Avatar billede kennethv Nybegynder
22. oktober 2008 - 14:49 #24
Det er denne linie:

<p class="text"><input type="text" name="v" style="width:200px" disabled></p>

som jeg tænkte på om den ikke kan byttes ud med

<input style=\"margin-left:600px\" type=\"text\" name=\"v\" style=\"width:200px\" disabled=\"disabled\">
Avatar billede w13 Novice
22. oktober 2008 - 14:50 #25
Måske. :) Men virker det ikke som det skal nu?
Avatar billede kennethv Nybegynder
22. oktober 2008 - 15:06 #26
Jo, det gør den, men jeg undre mig bare hvorfor det ikke er ens. :)
Avatar billede zips Juniormester
22. oktober 2008 - 15:16 #27
Denne
<input style=\"margin-left:600px\" type=\"text\" name=\"v\" style=\"width:200px\" disabled=\"disabled\">

Skal se sådan ud, altså kun en style
<input style=\"margin-left:600px;width:200px;\" type=\"text\" name=\"v\" disabled=\"disabled\">
Avatar billede w13 Novice
22. oktober 2008 - 15:27 #28
Forskellen er, at vi sætter margin-left:600px; på den. =)
Avatar billede w13 Novice
22. oktober 2008 - 15:28 #29
Dén kommentar var til Kennethv.

Zips har i øvrigt helt ret i, at det er meget bedre, om end ikke påkrævet.
Avatar billede kennethv Nybegynder
23. oktober 2008 - 09:45 #30
Hvorfor er kan jeg ikke få disse to på samme linie?

            echo "<br>Overdrages til anden medarbejder?";
            echo "<input style=\"margin-left:575px;width:200px\" type=\"text\" name=\"v\" disabled=\"disabled\"><br>";}

Input felt står på næste linie.
Avatar billede w13 Novice
23. oktober 2008 - 11:52 #31
Så er inputfeltet nok for langt. Prøv at sætte 200-tallet ned.
Avatar billede kennethv Nybegynder
23. oktober 2008 - 13:18 #32
sat den til 150.

Det hjalp ikke noget. Kun at feltet blev mindre, men teksten er ikke på samme linie.
:(
Avatar billede kennethv Nybegynder
23. oktober 2008 - 14:58 #33
W13. Jeg har sendt dig en fil med et screendump af problemet.
Avatar billede zips Juniormester
23. oktober 2008 - 15:04 #34
Så længe du har margin-left:575px på dit input felt, vil det være afstanden hen til teksten og sikkert derfor du oplever at den stå på 2 linjer hvis breden bliver for lille på siden.
Avatar billede kennethv Nybegynder
23. oktober 2008 - 15:19 #35
Du havde sgu ret. Jeg ændrede den til 375 og vupti kom de på samme linie. Tak for det.
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