Avatar billede zib Nybegynder
26. maj 2005 - 11:05 Der er 7 kommentarer og
1 løsning

udskriv alle. er det muligt?

hvis man har et artikel system hvor man kan printe artikler ud på denne måde:


artikel 1... læs mere
artikel 2... læs mere
artikel 3... læs mere
artikel 4... læs mere

kan man så lave en afkrydsning box ud for hver
og så skal der så står i bunden

udskriv alle med x (altså alle dem man har sat hak ved)


hvis man kan gider i så lave et lille eks?
Avatar billede coderdk Praktikant
26. maj 2005 - 11:24 #1
Noget i stil med dette:

// connect til db

if ( isset( $_GET['laes'] ) && is_array( $_GET['laes'] ) )
{
  $ids = implode( ',', $_GET['laes'] );
  $sql = "select titel, tekst from artikel where artikelid in (' . $ids . ') order by artikelid";
  $qh = mysql_query( $sql ) or die(mysql_error());
  while ( $row = mysql_fetch_assoc( $qh ) )
  {
    echo '<h2>' . $row['titel'] . '</h2><p>' . $row['tekst'] . '</p>';
  }
}
else
{
    $sql = "select artikelid, titel from artikel order by artikelid";
    $qh = mysql_query( $sql ) or die(mysql_error());
    echo '<form method="get" action="'.$_SERVER['PHP_SELF'].'">';
    while ( $row = mysql_fetch_assoc( $qh ) )
    {
      echo '<input type="checkbox" name="laes[]" value="' . $row['artikelid'] . '"> ' . $row['titel'] . '<br>';
    }
    echo '<input type="submit" value="Læs mere"></form>';
}
Avatar billede zib Nybegynder
26. maj 2005 - 11:41 #2
var ikke helt det jeg mente... min fejl dårlig forklaring!

den skal print(en printer) alle dem man har krydset af.


eks
----------------
[ ]  artikel 1... læs mere
[x]  artikel 2... læs mere
[x]  artikel 3... læs mere
[ ]  artikel 4... læs mere

udskriv alle de afkrydset
-----------------
så skal artikel 2 og 3 printes(en printer) ud


håber du for står
Avatar billede coderdk Praktikant
26. maj 2005 - 11:54 #3
Mjah, du kommer ikke uden om at gøre som jeg har skrevet alligevel, du kan gøre sådan:

<html>
    <head>
        <title>Print</title>
<?php

// connect til db

if ( isset( $_GET['laes'] ) && is_array( $_GET['laes'] ) )
{
?>
        <style type="text/css" media="print">
            h2 {
                page-break-before: always;
            }
        </style>
        <script type="text/javascript">
            window.onload = function ()
            {
                window.print();
            }
        </script>
    </head>
    <body>
<?php

  $ids = implode( ',', $_GET['laes'] );
  $sql = "select titel, tekst from artikel where artikelid in (' . $ids . ') order by artikelid";
  $qh = mysql_query( $sql ) or die(mysql_error());
  while ( $row = mysql_fetch_assoc( $qh ) )
  {
    echo '<h2>' . $row['titel'] . '</h2><p>' . $row['tekst'] . '</p>';
  }
}
else
{
    echo '</head><body>';
    $sql = "select artikelid, titel from artikel order by artikelid";
    $qh = mysql_query( $sql ) or die(mysql_error());
    echo '<form method="get" action="'.$_SERVER['PHP_SELF'].'">';
    while ( $row = mysql_fetch_assoc( $qh ) )
    {
      echo '<input type="checkbox" name="laes[]" value="' . $row['artikelid'] . '"> ' . $row['titel'] . '<br>';
    }
    echo '<input type="submit" value="Læs mere"></form>';
}

?>
    </body>
</html>
Avatar billede coderdk Praktikant
26. maj 2005 - 12:00 #4
Hmm det kom jeg til at tænke på ikke altid vil være lige heldigt, mht. tvungen sideskift. Prøv sådan:

<html>
    <head>
        <title>Print</title>
<?php

// connect til db

if ( isset( $_GET['laes'] ) && is_array( $_GET['laes'] ) )
{
?>
        <style type="text/css" media="print">
            .item {
                page-break-before: always;
            }
        </style>
        <script type="text/javascript">
            window.onload = function ()
            {
                window.print();
            }
        </script>
    </head>
    <body>
<?php

  $ids = implode( ',', $_GET['laes'] );
  $sql = "select titel, tekst from artikel where artikelid in (' . $ids . ') order by artikelid";
  $qh = mysql_query( $sql ) or die(mysql_error());
  while ( $row = mysql_fetch_assoc( $qh ) )
  {
    echo '<div class="item"><h2>' . $row['titel'] . '</h2><p>' . $row['tekst'] . '</p></div>';
  }
}
else
{
    echo '</head><body>';
    $sql = "select artikelid, titel from artikel order by artikelid";
    $qh = mysql_query( $sql ) or die(mysql_error());
    echo '<form method="get" action="'.$_SERVER['PHP_SELF'].'">';
    while ( $row = mysql_fetch_assoc( $qh ) )
    {
      echo '<input type="checkbox" name="laes[]" value="' . $row['artikelid'] . '"> ' . $row['titel'] . '<br>';
    }
    echo '<input type="submit" value="Læs mere"></form>';
}

?>
    </body>
</html>
Avatar billede zib Nybegynder
26. maj 2005 - 12:21 #5
da min printer er nede i øjeblikket (og først kommer op i weekenden) kan jeg ikke se om det virker

http://4boys.4b.funpic.org/test/artikler/test.php
Avatar billede zib Nybegynder
26. maj 2005 - 12:28 #6
gider du at tjekke om det funker?
Avatar billede zib Nybegynder
26. maj 2005 - 13:02 #7
det virker smid et svar tak
Avatar billede coderdk Praktikant
26. maj 2005 - 14:11 #8
Yesh :)
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