Ankündigung

Einklappen
Keine Ankündigung bisher.

per linkaufruf seite erzeugen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • per linkaufruf seite erzeugen

    Hi Gemeinde,

    Ich habe einen kleinen kalender erweitert und eine csv datei mit meinen terminen erstellt.
    Ich wuerde gerne, dass wenn ein termin vorhanden ist, ein link ausgegeben wird, der den zugehorigen csv inhalt ausibt



    ungefaehr so

    kal.csv
    $uhrzeit,$aktion
    09022015,mit janosch fischen gehen

    $datei = fopen("kal.csv", "r");
    $daten = fgetcsv($datei, 1000);
    $dat = date("dmY");

    echo "<a href=$dat target=_blank>",$kal_anzeige_heute_tag,"</a>";
    nun soll er zum $dat die daten von $daten[1] ausgeben

    Ich koennte jetzt fuer jeden tag im jahr eine html erzeugen mit $dat
    und darin dann mit $daten[1] den inhalt dort auslesen.

    Aber ich hoffe ja irgentwie nur eine datei erstellen zu muessen und mit dem aufruf des links irgentwie der einen seite mitzuteilen, dass es sich um den 09022015 handelt.

    mfg

    hier mal komplett der code. der kalender ist von schattenbaum.net
    kal.php
    PHP-Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Noch im aufbau</title>
    <link rel="stylesheet" type="text/css" href="styles.css" media="screen"> 
    </head>
    <body>
    <div class="container">
            <div id="top">
            </div>
        <div id="middle">
       <?php
        setlocale
    (LC_TIME"de_DE");
        
    $kal_datum time();
        
    $kal_tage_gesamt date("t"$kal_datum);
        
    $kal_start_timestamp mktime(0,0,0,date("n",$kal_datum),1,date("Y",$kal_datum));
        
    $kal_start_tag date("N"$kal_start_timestamp);
        
    $kal_ende_tag date("N"mktime(0,0,0,date("n",$kal_datum),$kal_tage_gesamt,date("Y",$kal_datum)));
        
    ?>
        <table class="kalender" style="text-align: center; ">
        <caption><?php echo utf8_decode(strftime("%B %Y"$kal_datum)); ?></caption>
        <thead>
        <tr>
        <th>Mo</th>
        <th>Di</th>
        <th>Mi</th>
        <th>Do</th>
        <th>Fr</th>
        <th>Sa</th>
        <th>So</th>
        </tr>
        </thead>
        <tbody>
        <?php 
        
    for($i 1$i <= $kal_tage_gesamt+($kal_start_tag-1)+(7-$kal_ende_tag); $i++)
        {
        
    $kal_anzeige_akt_tag $i $kal_start_tag;
        
    $kal_anzeige_heute_timestamp strtotime($kal_anzeige_akt_tag." day"$kal_start_timestamp);
        
    $kal_anzeige_heute_tag date("j"$kal_anzeige_heute_timestamp);
    $zbkan date("dmY"$kal_anzeige_heute_timestamp);

    if(
    date("N",$kal_anzeige_heute_timestamp) == 1)
        echo 
    " <tr>\n";
        

        if(
    date("dmY"$kal_datum) == date("dmY"$kal_anzeige_heute_timestamp))
        echo 
    " <td class=kal_aktueller_tag>".$kal_anzeige_heute_tag,"</td>\n";
    elseif(
    $kal_anzeige_akt_tag >= AND $kal_anzeige_akt_tag $kal_tage_gesamt AND kal($zbkan)!=true)
    echo 
    " <td class=\"kal_standard_tag\">",$kal_anzeige_heute_tag,"</td>\n";

    elseif (
    kal($zbkan)==true
    echo 
    " <td class=\"termin\">",$kal_anzeige_heute_tag,"</td>\n";


        else
       echo 
    " <td class=\"kal_vormonat_tag\">",$kal_anzeige_heute_tag,"</td>\n";
        if(
    date("N",$kal_anzeige_heute_timestamp) == 7)
        echo 
    " </tr>\n";
        }
        
    ?>
        </tbody>
        </table>
    <?php
     
    function kal($eintrag) {
    $posi false;
    $datei fopen("kal.csv""r");
    $daten fgetcsv($datei1000); while ($daten){
        
    $daten fgetcsv($datei1000);
            if (
    in_array($eintrag$daten)){
     
    $posi true;
    }
    }
    fclose($datei);
    return 
    $posi;

    }
    ?>
     <div id="mid2">
     <form action="upload.php" method="post" enctype="multipart/form-data">
     <input type="file" name="datei"><br> <input type="submit" value="delete">
    </form>
     </div> 

    </div>

    </div> </body> </html>
    php2csv
    PHP-Code:

    cal2csv.php
     <?php
    $daten 
    $_POST['titel'];
    $fp fopen('kal.csv''a');
    fputcsv($fp$daten);
    fclose($fp); ?>

  • #2
    Ich weiss nicht ganz worauf du genau hinauswillst, aber du kannst Parameter auch per URL übergeben

    Code:
    index.php?parameter=test&value=1
    PHP-Code:
    $_GET['parameter']; // test
    $_GET['value']; // 1 
    und Dateien direkt an den Browser senden

    http://php.net/manual/de/function.readfile.php

    Du musst natürlich aufpassen, dass du nicht jede beliebige Datei an den Browser schickst, z.B. mit Zugangsdaten zur Datenbank. Also solltest du eine Whitelist erstellenin der nur gültige Dateien stehen.

    http://www.php-resource.de/forum/php...whitelist.html
    [I]You know, my wife sometimes looks at me strangely. „Duncan“, she says, „there's more to life than Solaris“. Frankly, it's like she speaks another language. I mean, the words make sense individually, but put them together and it's complete nonsense.[/I]

    Kommentar


    • #3
      Ich

      danke dir !

      wenn man weiss wonach man suchen muss ist es doch viel einfacher...
      Ich habe mich jetzt etwas in get eingelesen und bin etwas abgeschreckt, da eigtentlich ueberall von sicherheitsproblemen gesprochen wird.

      meine loesung
      ich habe ein popup on hover auf die termin klasse gelegt...
      und werde den kompletten kalender auf die detail ansicht verlinken

      PHP-Code:
      span.termin:hover {text-decorationnone;
      z-index6; }
      span.termin span {positionabsoluteleft: -9999px;
        
      border-style:solid;z-index6;}

      span.termin:hover span {left2%;}

      span.termin span {positionabsoluteleft: -9999px;
        
      border-style:solidborder-width:1px;}

      span.termin:hover span {
      font-size:3em;
      line-height1.0;
      margin20px 0 0 370px;
      z-index:6;
       
      text-alignjustify;
      min-width:300px;
      min-height:300px;
      }

      h3 {
          
      color#C0CCCC;
              
      font-size:0.5em;


      PHP-Code:
       <?php
      function arout($eintrag1) {
      $datei fopen("kal.csv""r");
      $daten fgetcsv($datei1000);
      while (
      $daten){
              
      $daten fgetcsv($datei1000);
       if (
      in_array($eintrag1$daten)){
      echo 
      "<h3>Wann: </h3>";
      echo  
      $daten[1];
      echo 
      "-";
      echo  
      $daten[2];
      echo 
      "<br><h3>Was:</h3>";
      echo  
      $daten[3];
      echo 
      "<br><h3>Wo:</h3>";
      echo  
      $daten[4];
      echo 
      "<br>";
      }
      }
      fclose($datei);

      }
       
      ?>


      PHP-Code:
      elseif (kal($zbkan)==true) {
      echo 
      "<td class=termin><span class=termin>";
      echo 
      $kal_anzeige_heute_tag;
      echo 
      "<span>";
      arout($zbkan);
      echo 
      "<br></span></span></td>\n";

      Kommentar


      • #4
        Klar reisst du dir Sicherheitslücken auf, wenn du ungefiltert Benutzereingaben übernimmst. Aber mit dem Argument kannst du das Internet auch gleich abschalten - oder halt was dagegen unternehmen.
        [I]You know, my wife sometimes looks at me strangely. „Duncan“, she says, „there's more to life than Solaris“. Frankly, it's like she speaks another language. I mean, the words make sense individually, but put them together and it's complete nonsense.[/I]

        Kommentar

        Lädt...
        X