Omvanda eget PHP script till fler användare script.

C, C++, Pascal, Assembly, Raspberry, Java, Matlab, Python, BASIC, SQL, PHP, etc.
Användarvisningsbild
lgrfbs
Inlägg: 6973
Blev medlem: 28 januari 2005, 15:48:53
Ort: X-län
Kontakt:

Omvanda eget PHP script till fler användare script.

Inlägg av lgrfbs »

Gjorde en webbsökning på "PHP login system" och många nämner MySQL i resultaten, så måste man ha en databas för att göra ett login system?
Jag inser att jag behöver förklara lite mer för att ni ska ha en möjlighet att svara.
Har handknackat ett "hemskt" PHP script (för att skapa vagnskort för modul modelljärnvägskörningar) som tar emot *.txt och *.jpg filer för att sedan spotta ur sig nya PHP filer som i sin tur steamar ut PDF data som webbläsare visar som en nedladdningsdialogruta.

Detta har funkat fint för mig, som ensam användare.
Nu vill jag erbjuda mina vänner att använda samma PHP script och då behövs något sätt att hålla användarna och de filer som blivit uppladdade av just den användaren.

Så länge användaren inte skriver in sin postadress,e-post adress, telefonnummer eller liknade så är det bara teknisk data om modellen och förebilden i en textfil och en bildfil på vagnen, så GPDR bör inte vara ett problem för detta typ av script.

De lösningar jag bollat i hjärnbalken är:
1; Användaren skriver in en tag på minst 10 tecken innan alla filer laddas upp så att scriptet märker alla filerna med denna tag.
och på så sätt kommer bara filer med rätt tag att visas för användaren.

2; Klassiskt inloggsystem med e-post och lösenord.

3; Användaren anger sin e-postadress och scriptet skapar en användare och sänder en länk med ett unikt URL till e-post adressen för att användaren ska nå sin sida.

Jag vill ha så lite anliggningsyta som möjligt mot GPDR.
http://www.hobbywebb.se/Wcard/form.php#List

Så har ni någon smart lösning på att göra scriptet fler användare vänligt?
[VISA]
Kodbas för min sida:

Kod: Markera allt

<?php
echo"<html>";
echo"    <head>";
echo"        <title>Pleas bee nice, we connecting you to the homepage</title>";
echo'<meta http-equiv="refresh" content="1; url=form.php">    </head>';
echo"    <body>";

echo"    </body>";
echo"</html>";
?>

Kod: Markera allt

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="sv" xml:lang="sv">
 <head>
  <meta name="robots" content="noindex" />
  <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
  <meta http-equiv="content-language" content="sv" />
  <meta http-equiv="content-style-type" content="text/css" />
  <meta http-equiv="imagetoolbar" content="no" />
  <meta name="resource-type" content="document" />
  <meta name="distribution" content="global" />
  <meta name="keywords" content="" />
  <meta name="description" content="" />
  <title>   Vagnskort - Modulkörningar   </title>
  <link href="./style.css" rel="stylesheet" type="text/css">
  <script>
   function myFunction(file)
   {
    if(file.files.length>10)
    {
     alert("Maximum 10 files");
     document.getElementById("file").value='';
    }
   }
   function chk()
   {
    var sds = document.getElementById('dum');
    if(sds == null){alert("You are using a free package.\n You are not allowed to remove the tag.\n");
    document.getElementById("maindiv").style.visibility="hidden";}
    var sdss = document.getElementById("dumdiv");
    if(sdss == null){alert("You are using a free package.\n You are not allowed to remove the tag.\n");}
   }			 
   window.onload=chk;
  </script>
 </head>
 <body>
  <H2>Steg 0 - Ladda ner mallfilen</H2>
  Detta görs bara en gång, du återanvänder mallen för varje vagn du vill skapa ett vagnskort till.
  <A Href="Mall2020.zip">Ladda ner mallen-filen här</A><br>
  Jag behöver bara text filen: <A Href="Mall_Omk.txt">Textmallfilen</A><BR>
  <BR>
  <BR>
  <BR>
  <H2>Steg 1 - Ladda upp bilder och text filerna</H2>
  *.txt är grunden för att det ska gå att skapa ett PDF dokument.<br>
  *.jpg/*.png används av *.txt filen.<br>
  *.zip kan inte användas för att ladda upp båda filern på en gång.<br>
  <div class='resp_code' id='maindiv'>
   <!--<center><b>Multiple File Upload</b></center><br>-->
   <div align=left><b>Ladda upp fil: (< 8000 Kb)</b>
    <form action="" method="post" enctype="multipart/form-data" class='frms' name="form1">
     <input type="file" id="file" name="files[]" multiple="multiple" required='required' onchange="myFunction(this)"/>
     <input type="submit" value="Ladda upp filer" />
    </form>
   </div>
   <!--	<p align=left><b>Note : Allowed extensions are JPG, JPEG, GIF, PNG, BMP and TXT.</b></p>-->
   <?php
    error_reporting(0);
    $valid_formats = array("txt", "jpg", "png", "gif", "bmp","jpeg","csv");
    $max_file_size = 1024*8000; //200 kb
    $path = "uploads/"; // Upload directory
    $count = 0;
    if(isset($_POST) and $_SERVER['REQUEST_METHOD'] == "POST")
    {
	 // Loop $_FILES to exeicute all files
	 foreach ($_FILES['files']['name'] as $f => $name) 
	 {     
	  if ($_FILES['files']['error'][$f] == 4) 
	  {
	   continue; // Skip file if any error found
	  }	       
	  if ($_FILES['files']['error'][$f] == 0) 
	  {
	   if ($_FILES['files']['size'][$f] > $max_file_size) 
	   {
	    $message[] = "$name är f r stor!.";
	    continue; // Skip large files
	   }
	   elseif( ! in_array(pathinfo($name, PATHINFO_EXTENSION), $valid_formats) )
	   {
		$message[] = "$name är inte ett gilltligt format";
		continue; // Skip invalid file formats
	   }
	   else
	   { // No error found! Move uploaded files 
	    if(move_uploaded_file($_FILES["files"]["tmp_name"][$f], $path.$name))
        $path1="uploads/".$_FILES["files"]['name'][$f];
        copy( $_FILES["files"]['tmp_name'][$f], $path1.$name );
        echo "<div> " . $_FILES["files"]['name'][$f] . " uppladdat framgångsrikt!<br>";
        echo "Typ:  " . $_FILES["files"]["type"][$f] . "<br>";
        echo "Storlek: " . ($_FILES["files"]["size"][$f] / 1024) . " Kb<br>";
        //echo "Stored in: " .$path.$_FILES["files"]["name"][$f]."<br></div><br>";
	    $count++; // Number of successfully uploaded file
	   }
	  }
	 }
    }
   ?> 
   <div id="dumdiv" style="font-size: 10px;color: #dadada;" align='center'>
    <a id="dum" style="text-decoration:none;color: #dadada;" href="http://www.hscripts.com">&copy;h</a>
   </div>
  </div>
  <BR>
  <BR>
  <BR>
  <H2>Steg 2 - Skapa PDF filer och lista dem</H2>
  <form action="MakeIndex.php" class='frms' method="post">
   <!-- Ange din fil-tag:<input type="text" name="website"><BR-->
   <input type="submit" value="Skapa grund filer för PDF:er och lista" name="submit">
  </form>
  <BR>
  <BR>
  <BR>
  <a name="List"></a> 
  <H2>Steg 3 - Ladda ner dina PDF:er</H2>
  <?php
   $filename = "WagonIndex.html";
   //echo $filename ."<BR>";
   if (file_exists($filename))
   {
    //echo "File exist.";
    include('WagonIndex.html');
   }
   else
   {
    //echo "File does not exist.";
   }
  ?>
  <BR>
  <BR>
  <BR>
  <H2>Steg 4 - Skriv ut dina PDF:er.</H2>
  <HR>
  Byggt av <A Href="https://paypal.me/lgrfbs?locale.x=sv_SE">Robert Halvarsson</A> 2019 med metoden klipp och klistra från internet.<BR>
  <A Href="Mall2020.zip">Ladda ner mallen-filen här</A><br>
  <A Href="Wagon20200221.zip">Ladda ner systemet här</A><br>
  <A Href="https://github.com/Setasign/FPDF">Homepage for FPDF</A><br>
  <HR>
 </body>
</html>

Kod: Markera allt

<?php
 echo"<html>";
 echo"    <head>";
 echo"        <title>Skapar PDF lista</title>";
 echo'<meta http-equiv="refresh" content="3; url=form.php#List">    </head>';
 echo' </head>';
 echo" <body>";
 echo" <Center>";
 //echo $_POST["website"];
 $FileTag=$_POST["website"];
 echo $FileTag;
 $Hmmtxt="Urk";
 $Num=0;
 $ONErun0=0;
 $ONErun1=0;
 $ONErun2=0;
 $UsserDir="";
 $myZfile = fopen("./WagonIndex.html", "w") or die("Unable to open file!");
  fwrite($myZfile, $line ."\n");
 fclose($myZfile);
 $Totalfile = fopen("./AllWagon.php", "w") or die("Unable to open file!");
 fclose($Totalfile);
 foreach (new DirectoryIterator('./uploads') as $fileInfo) 
 {
  if($fileInfo->isDot()) continue;
  $fileInfo->getFilename();
  $Hmmtxt=substr($fileInfo,-3,3);
  $Hmmtxt=strtolower($Hmmtxt);
  //echo $Hmmtxt . " - ";
  if ($Hmmtxt=="txt")
  {
   echo "<br>\n";
   echo $fileInfo;
   $Num=$Num+1;
   $myfile = fopen("./".$FileTag."Wagon_".$Num.".php", "w") or die("Unable to open file!");
   $Totalfile = fopen("./".$FileTag."AllWagon.php", "a") or die("Unable to open file!");
    //echo "./templets/A.data<br>";
    if ($file = fopen("./templets/A.data", "r")) 
    {
     while(!feof($file)) 
     {
      $line = fgets($file);
      //echo $line."<br>";  //Debug line
      fwrite($myfile, $line);
      if ($ONErun0==0){fwrite($Totalfile, $line);}
     }
     fclose($file);
     $ONErun0=1;
    }
    //echo "./uploads/".$fileInfo."<br>";
    if ($file = fopen("./uploads/".$fileInfo , "r")) 
    {
     while(!feof($file)) 
     {
      $line = fgets($file);
      //echo $line."<br>";  //Debugline
//-- Start 2020 uppdaterning --
      $Check1=substr( $line, 0 ,1 );

      //Kontrollerar att raden börjar med $-tecknet
       if ($Check1 = '$')
       {
        //$ finns på plats och variablen förblir orörd.
        //Echo "Okej <BR>"; 
       }
       else
       {
        //$ saknas och variablen töms på innehåll.
        $line="";
       }
//-- End 2020 uppdaterning --
      fwrite($myfile, $line);
      fwrite($Totalfile, $line);
     }
     fclose($file);
    }
    //echo "./templets/B.data<br>";
    if ($file = fopen("./templets/B.data", "r")) 
    {
     while(!feof($file)) 
     {
      $line = fgets($file);
      //echo $line."<br>";  //debugline
      if (strpos($line, 'new FPDF') !== false) 
      {
       fwrite($Totalfile, "//new FPDF if present! ONErun1=".$ONErun1." \n");
       fwrite($myfile, $line);
       if ($ONErun1==0)
       {
        fwrite($Totalfile, $line);
       }//if ($ONErun1>0)
       $ONErun1=$ONErun1+1;
      }
      else
      {
       fwrite($myfile, $line);
       fwrite($Totalfile, $line);
      }
     }
     fclose($file);
    }
    //echo "./templets/C.data<br>";
    if ($file = fopen("./templets/C.data", "r")) 
    {
     while(!feof($file)) 
     {
      $line = fgets($file);
      //echo $line."<br>";  //debugline
      //echo $fileInfo."<br>";  //debugline
      //"$fileInfo.pdf"
      $L1="";      
      for ($x = 0; $x <= strlen($line); $x++)
      {
       //echo "The number is: $x <br>";
       //echo "fileInfo=".$Check2."<br>";  //debugline
       $Check2=substr( $line, $x ,8 );
       if ($Check2 == "fileInfo")
       {
        //echo "Funnen<br><br><br>";
        $L1=substr( $line,0, $x-1 );
        $L2=substr( $fileInfo, 0 ,strlen($fileInfo)-4 );
        $L3=substr( $line, $x+8 ,strlen($line));
        //echo $L1."<br>";
        //echo $L2."<br>";
        //echo $L3."<br>";
        //echo "<BR><BR><BR>";
       }
      } 
      if (strlen($L1)>0)
      {
       $line=$L1.$L2.$L3;
       //echo $line."<BR>";
       //echo "<BR><BR><BR>";
      }
      fwrite($myfile, $line);
     }
     fclose($file);//"./templets/C.data<br>";
    }
    $myZfile = fopen("./WagonIndex.html", "a") or die("Unable to open file!");
    if ($ONErun2==0)
    {
     fwrite($myZfile,'<div align="center">'."\n");
     fwrite($myZfile," Alla vagnarna<br>"."\n");
     fwrite($myZfile,' <form action="'.$FileTag.'AllWagon.php" class="frms" >'."\n");
     fwrite($myZfile,'  <input type="submit" value="A5 landscape dubbel side" name="submit">'."\n");
     fwrite($myZfile," </form>"."\n");
     fwrite($myZfile,"</div><BR>"."\n");
     $ONErun2=1;
    }
    $All=2;
    echo $FileTag;
    fwrite($myZfile,'<div align="center">'."\n");
    fwrite($myZfile," $fileInfo<br>"."\n");
    fwrite($myZfile,' <form action="'.$FileTag.'Wagon_'.$Num.'.php" class="frms" >'."\n");
    fwrite($myZfile,'  <input type="submit" value="A5 landscape dubbel side" name="submit">'."\n");
    fwrite($myZfile," </form>"."\n");
    fwrite($myZfile,"</div><BR>"."\n");
    fclose($myZfile);
    fclose($myfile); //"./Wagon_".$Num.".php"
    echo " - Klart <br>\n";
   }
  }
  if ($file = fopen("./templets/C.data", "r")) 
  {
   while(!feof($file)) 
   {
    $line = fgets($file);
    //echo $line."<br>";  //debugline
    //echo $fileInfo."<br>";  //debugline
    //"$fileInfo.pdf"
    $L1="";      
    for ($x = 0; $x <= strlen($line); $x++)
    {
     //echo "The number is: $x <br>";
     //echo "fileInfo=".$Check2."<br>";  //debugline
     $Check2=substr( $line, $x ,8 );
     if ($Check2 == "fileInfo")
     {
      //echo "Funnen<br><br><br>";
      $L1=substr( $line,0, $x-1 );
      $L2="Alla_vagnarna";
      $L3=substr( $line, $x+8 ,strlen($line));
      //echo $L1."<br>";
      //echo $L2."<br>";
      //echo $L3."<br>";
      //echo "<BR><BR><BR>";
     }
    } 
    if (strlen($L1)>0)
    {
     $line=$L1.$L2.$L3;
     //echo $line."<BR>";
     //echo "<BR><BR><BR>";
    }
    fwrite($Totalfile, $line);
    if ($ONErun0==0){fwrite($Totalfile, $line);}
    $ONErun0=1;
   }
   fclose($file);//"./templets/C.data<br>";
  }
  fclose($Totalfile);
  echo "<HR>Laddar in huvudsidan ... <br>\n";
  echo "</Center>";
  echo" </body>";
  echo"</html>";
?>
Mappen: templets

Kod: Markera allt

<?php
 require('./fpdf181/fpdf.php');
 // --- A ------------------------------------------------------

Kod: Markera allt

 // --- B start ------------------------------------------------
 $SidaAImagesH=16;
 $ImagesKvot=($OrginalImagesH/$SidaAImagesH);
 $SidaAImagesW=($OrginalImagesW/$ImagesKvot);
 
 $SidaBImagesH=58;
 $ImagesKvot=($OrginalImagesH/$SidaBImagesH);
 $SidaBImagesW=($OrginalImagesW/$ImagesKvot);

 
 $pdf=new FPDF('L','mm','A5');
 $pdf->AddPage();
 $pdf->SetFont('Arial','B',16);

$UICtype="-";
//Motorvagnar, Rälsbussar
//if (substr($UIC,0,1)=='X'){$cardcolor="255,000,000";$UICtype="+";}
//if (substr($UIC,0,1)=='Y'){$cardcolor="255,000,000";$UICtype="+";}
//if (substr($UIC,0,1)=='U'){$cardcolor="255,000,000";$UICtype="+";}

//Personvagnar
if ($UICtype=="-"){
 if (substr($UIC,0,1)=='A'){ $cardcolor="000,128,000";$UICtype="+";}
 if (substr($UIC,0,1)=='B'){ $cardcolor="000,128,000";$UICtype="+";}
 if (substr($UIC,0,1)=='C'){ $cardcolor="000,128,000";$UICtype="+";}
 if (substr($UIC,0,1)=='D'){ $cardcolor="154,051,000";$UICtype="+";}
 if (substr($UIC,0,1)=='F'){ $cardcolor="154,051,000";$UICtype="+";}
 if (substr($UIC,0,1)=='BC'){$cardcolor="128,000,128";$UICtype="+";}
 if (substr($UIC,0,1)=='WL'){$cardcolor="128,000,128";$UICtype="+";}
 if (substr($UIC,0,1)=='R'){ $cardcolor="128,000,128";$UICtype="+";}
 if (substr($UIC,0,1)=='S'){ $cardcolor="128,000,128";$UICtype="+";}
}

//Godsvagnar 
if ($UICtype=="-"){
 if (substr($UIC,0,1)=='E'){ $cardcolor="255,154,204";}
 if (substr($UIC,0,1)=='F'){ $cardcolor="255,000,255";}
 if (substr($UIC,0,1)=='E'){ $cardcolor="255,154,204";}
 if (substr($UIC,0,1)=='G'){ $cardcolor="255,255,154";}
 if (substr($UIC,0,1)=='H'){ $cardcolor="255,204,154";}
 if (substr($UIC,0,1)=='I'){ $cardcolor="255,255,255";}
 if (substr($UIC,0,1)=='l'){ $cardcolor="255,255,255";}
 if (substr($UIC,0,1)=='K'){ $cardcolor="204,255,204";}
 if (substr($UIC,0,1)=='L'){ $cardcolor="154,204,255";}
 if (substr($UIC,0,1)=='M'){ $cardcolor="192,192,192";}
 if (substr($UIC,0,1)=='O'){ $cardcolor="204,255,204";}
 if (substr($UIC,0,1)=='Q'){ $cardcolor="154,051,000";}
 if (substr($UIC,0,1)=='R'){ $cardcolor="051,154,101";}
 if (substr($UIC,0,1)=='S'){ $cardcolor="051,154,101";}
 if (substr($UIC,0,1)=='T'){ $cardcolor="255,204,000";}
 if (substr($UIC,0,2)=='Ua'){$cardcolor="154,204,255";}
 if (substr($UIC,0,2)=='Ud'){$cardcolor="154,204,255";}
 if (substr($UIC,0,2)=='Uh'){$cardcolor="192,192,192";}
 if (substr($UIC,0,2)=='Uc'){$cardcolor="192,192,192";}
 if (substr($UIC,0,1)=='Z'){ $cardcolor="192,192,192";}
}


// A4 210x297mm
// X=297
// Y=210
//         Y        X
// A4	210 mm × 297 mm
// A5	148 mm × 210 mm


 $OrigoX=30;//(210-100)/2=55
 $OrigoY=20;//(297-(145+145)/2
$Red  =substr($cardcolor,0,3);
$Green=substr($cardcolor,4,3);
$Blue =substr($cardcolor,8,3);

 $pdf->SetFillColor($Red,$Green,$Blue);//255,255,255
 $pdf->SetDrawColor(0,0,0);
 $pdf->SetLineWidth(0.4);


// -- Sida A --
 $SidaW=150; $SidaH=100; $FraktW=64;  $FixW=29;
 $RowH=14;  $RowW=$SidaW-$FraktW-$FixW;  
 //         -,|
 //         X,Y,W,H
 $pdf->SetFillColor($Red,$Green,$Blue);//Bakgrundsfärg på sida A
 $pdf->Rect($OrigoX,      $OrigoY,$SidaW,$SidaH,'DF');//Sida A
 $pdf->Rect($OrigoX,      $OrigoY,$RowW, $RowH, 'D'); //Vagnsnummer-Rad1
 $pdf->Rect($OrigoX+$RowW,$OrigoY,$FixW, $RowH, 'D'); //Trafikforetag-Rad1
 if (strlen($Vagnsnummer)>7)
 {
  $pdf->SetFontSize(28);
  //$Vagnsnummer=substr($Vagnsnummer,0,7);
  $TC=$pdf->GetStringWidth($Vagnsnummer);
  $TCC=$TC/2;
  $RRW=$RowW/2;
  $pdf->Text($OrigoX-$CT-$TCC+$RRW    , $OrigoY+10,$Vagnsnummer); //Rad1
 }

 if (strlen($Vagnsnummer)<7)
 {
  $pdf->SetFontSize(40);
  //$Vagnsnummer=substr($Vagnsnummer,0,7);
  $TC=$pdf->GetStringWidth($Vagnsnummer);
  $TCC=$TC/2;
  $RRW=$RowW/2;
  $pdf->Text($OrigoX-$CT-$TCC+$RRW    , $OrigoY+12,$Vagnsnummer); //Rad1
 }
 

 $pdf->SetFontSize(38);
 $Tagsystem=substr($Tagsystem,0,3);
 $TC=$pdf->GetStringWidth($Tagsystem);
 $TCC=$TC/2;
 $FFixW=$FixW/2;
 $pdf->Text($OrigoX+$RowW-$CT-$TCC+$FFixW    , $OrigoY+12.5,$Tagsystem); //Rad1
 $pdf->SetFontSize(16);

 if ($Tagsystem==''){
 if (file_exists('./uploads/'.$Tagsystembild))
  {
   //                                      X-Vänster   Y-Top      W  H
   $pdf->Image('./uploads/'.$Tagsystembild,$OrigoX+57.5   ,$OrigoY+0.5,28,13);
  }
}


 $pdf->Rect($OrigoX+$RowW+$FixW,    $OrigoY,  $FraktW,  $SidaH,  'D');//Fraktsedl yttreram
 $pdf->Rect($OrigoX+$RowW+$FixW+1,  $OrigoY+1,$FraktW-2,$SidaH-2,'D');//Fraktsedel innreram

//Hemstation bakgrundsfärgen


 $TC=$pdf->GetStringWidth($Stationsort);
 //$pdf->Text(5 ,5,$TC);
 if ($TC>55){
  for ($i = 1; $i<=strlen($Stationsort) ; $i++) {
   $Check=substr($Stationsort,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<59.5){$X=$i;}
  }
  $i=$X;
  $Stationsort=substr($Stationsort,0,$i);
  $Stationsort=$Stationsort.'¤';
 }
  //$TextLen=$pdf->GetStringWidth($Stationsort);
  //$pdf->Text(5 ,15,$TextLen);



$Red  =substr($StationsBcolor,0,3);
$Green=substr($StationsBcolor,4,3);
$Blue =substr($StationsBcolor,8,3);
 $pdf->SetFillColor($Red,$Green,$Blue);//Hemstation 0,0,255
 $pdf->SetDrawColor(0,0,0);      //Hemstation
 $pdf->Rect($OrigoX+$RowW+$FixW+1,$OrigoY+1,$FraktW-2,10,'DF');   //Hemstation

//Hemstation Textensfärg
$Red  =substr($StationsTcolor,0,3);
$Green=substr($StationsTcolor,4,3);
$Blue =substr($StationsTcolor,8,3);
 $pdf->SetTextColor($Red,$Green,$Blue);//255,255,255 Fräg på Hemstation texten




 $TC=$pdf->GetStringWidth($Stationsort);
 $TCC=$TC/2;
 $FFraktW=($FraktW-2)/2;
 $pdf->Text($OrigoX+$RowW+$FixW+2-$TCC+$FFraktW ,$OrigoY+8,$Stationsort);
 $pdf->SetTextColor(0,0,0);


if ($RIV=='Ja'){
$BoxW=13;
$BoxH=6;
$RIVX=$OrigoX+$OrigoX+$RowW+((($FraktW-2)/2)-($BoxW/2));
$RIVY=$OrigoY+90;
//        Vänster    Topp  Bredd Höjd
 $pdf->Rect($RIVX    ,$RIVY,    $BoxW,  $BoxH,'D');  //Ram till RIV symbolen
 $pdf->Text($RIVX+2  ,$RIVY+5,  'RIV');
 }


$pdf->SetLineWidth(0.8);
if (($Sth>=100) && ($Sth<120)){
$BoxW=13;
$BoxH=6;
$RIVX=$OrigoX+$OrigoX+$RowW+((($FraktW-2)/2)-($BoxW/2));
$RIVY=$OrigoY+90;
//        Vänster    Topp  Bredd Höjd
$pdf->SetDrawColor(255,0,0);
 $pdf->Line($OrigoX+$RowW+$FixW+1.5,  $OrigoY+1+$SidaH-2.5, $OrigoX+$RowW+$FixW+1+$FraktW-2.5,  $OrigoY+1.5);    //Ram till RIV symbolen
 //$pdf->Rect($OrigoX+$RowW+$FixW+1,  $OrigoY+1,$FraktW-2,$SidaH-2,'D');//Fraktsedel innreram
 }

if ($Sth>=120){
$BoxW=13;
$BoxH=6;
$RIVX=$OrigoX+$OrigoX+$RowW+((($FraktW-2)/2)-($BoxW/2));
$RIVY=$OrigoY+90;
//          Vänster                 Topp                Vänster2                            Topp2
$pdf->SetDrawColor(255,0,0);
$pdf->SetLineWidth(1.5);

 //$pdf->Line($OrigoX+$RowW+$FixW+1.5,  $OrigoY+1+$SidaH-2.5, $OrigoX+$RowW+$FixW+1+$FraktW-2.5,  $OrigoY+1.5);  //Ram till RIV symbolen

$pdf->SetLineWidth(0.8);

 $pdf->Line($OrigoX+$RowW+$FixW+1.5,  $OrigoY+1+$SidaH-4.8, $OrigoX+$RowW+$FixW+1+$FraktW-4,  $OrigoY+1.5);  //Ram till RIV symbolen
 $pdf->Line($OrigoX+$RowW+$FixW+3,  $OrigoY+1+$SidaH-2.5, $OrigoX+$RowW+$FixW+1+$FraktW-2.5,  $OrigoY+3.8);  //Ram till RIV symbolen
 }
$pdf->SetDrawColor(0,0,0);
$pdf->SetLineWidth(0.4);



// Kontrollerar längden på Littra fältet
// Debugg
 $TC=$pdf->GetStringWidth($Littra);//
 // $pdf->Text(5 ,5,$TC);
 if ($TC>30){
  for ($i = 1; $i<=strlen($Littra) ; $i++) {
   $Check=substr($Littra,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<29){$X=$i;}
  }
  $i=$X;
  $Littra=substr($Littra,0,$i);
  $Check=substr($Littra,0,$i);

  //  $TC=$pdf->GetStringWidth($Check);//
  //  $pdf->Text(5 ,10,$TC);
  //  $pdf->Text(5 ,15,$i);
 }
 $M=(+$RowW+$FixW)/2; $T=14; $H=5;
 $pdf->Rect($OrigoX,$OrigoY+$T,$M,$H+$H,'D');//Littra-Rad2
 $pdf->Text($OrigoX-($TC/2)+($M/2),$OrigoY+$T+7,$Littra);


 $pdf->SetFontSize(10);
 $pdf->Text($OrigoX+45,$OrigoY+$T+4,$Epok);
 $pdf->Text($OrigoX+45,$OrigoY+$T+9,$Tidsrymd);

 $pdf->SetFontSize(55);
 $TextLen=$pdf->GetStringWidth($UIC);
 //$pdf->Text(5 ,10,$TextLen);

 if ($TextLen<20){
  $pdf->Text($OrigoX-($TextLen/2)+10,$OrigoY+$T+29,$UIC); //$UIC
 }

 if (($TextLen>20)&&($TextLen<30)){
  $pdf->SetFontSize(28);
  $pdf->Text($OrigoX-($TextLen/2)+10,$OrigoY+$T+25,$UIC); //$UIC
 }

 if (($TextLen>30)&&($TextLen<40)){
  $pdf->SetFontSize(22);
  $pdf->Text($OrigoX-($TextLen/2)+10,$OrigoY+$T+24,$UIC); //$UIC
 }
 
 if ($TextLen>40){
  $pdf->SetFontSize(20);
  $pdf->Text($OrigoX-($TextLen/2)+10,$OrigoY+$T+24,$UIC); //$UIC
 }


 $pdf->Rect($OrigoX+$M,$OrigoY+$T,$M,$H,'D');//UIC-Rad2
 $pdf->Rect($OrigoX+$M,$OrigoY+$T+$H,$M,$H,'D');//Rad2
 
 





 $M=20; $T=$T+$H+$H; $H=24;
 $pdf->Rect($OrigoX,$OrigoY+$T,$M,$H,'D');   //Rad3
 $pdf->Rect($OrigoX+$M,$OrigoY+$T,+$RowW+$FixW-$M,$H,'D');//Rad3
 // $pdf->SetFontSize(10);
 $pdf->SetFont('','',8);

 //$TextLen=$pdf->GetStringWidth($Kommentar0);
 //$pdf->Text(5 ,10,$TextLen);


 $TC=$pdf->GetStringWidth($Kommentar0);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>60){
  for ($i = 1; $i<=strlen($Kommentar0) ; $i++) {
   $Check=substr($Kommentar0,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<64){$X=$i;}
  }
  $i=$X;
  $Kommentar0=substr($Kommentar0,0,$i);
  $Kommentar0=$Kommentar0.'¤';
 }
 // $TextLen=$pdf->GetStringWidth($Kommentar0);
 // $pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+$M+1,$OrigoY+$T+3,$Kommentar0);
 

 
$TC=$pdf->GetStringWidth($Kommentar1);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>60){
  for ($i = 1; $i<=strlen($Kommentar1) ; $i++) {
   $Check=substr($Kommentar1,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<64){$X=$i;}
  }
  $i=$X;
  $Kommentar1=substr($Kommentar1,0,$i);
  $Kommentar1=$Kommentar1.'¤';
 }
 // $TextLen=$pdf->GetStringWidth($Kommentar1);
 // $pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+$M+1,$OrigoY+$T+5.9,$Kommentar1);



$TC=$pdf->GetStringWidth($Kommentar2);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>60){
  for ($i = 1; $i<=strlen($Kommentar2) ; $i++) {
   $Check=substr($Kommentar2,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<64){$X=$i;}
  }
  $i=$X;
  $Kommentar2=substr($Kommentar2,0,$i);
  $Kommentar2=$Kommentar2.'¤';
 }
 // $TextLen=$pdf->GetStringWidth($Kommentar2);
 // $pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+$M+1,$OrigoY+$T+8.8,$Kommentar2);



$TC=$pdf->GetStringWidth($Kommentar3);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>60){
  for ($i = 1; $i<=strlen($Kommentar3) ; $i++) {
   $Check=substr($Kommentar3,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<64){$X=$i;}
  }
  $i=$X;
  $Kommentar3=substr($Kommentar3,0,$i);
  $Kommentar3=$Kommentar3.'¤';
 }
 // $TextLen=$pdf->GetStringWidth($Kommentar3);
 // $pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+$M+1,$OrigoY+$T+11.7,$Kommentar3);



$TC=$pdf->GetStringWidth($Kommentar4);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>60){
  for ($i = 1; $i<=strlen($Kommentar4) ; $i++) {
   $Check=substr($Kommentar4,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<64){$X=$i;}
  }
  $i=$X;
  $Kommentar4=substr($Kommentar4,0,$i);
  $Kommentar4=$Kommentar4.'¤';
 }
 // $TextLen=$pdf->GetStringWidth($Kommentar4);
 // $pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+$M+1,$OrigoY+$T+14.6,$Kommentar4);



$TC=$pdf->GetStringWidth($Kommentar5);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>60){
  for ($i = 1; $i<=strlen($Kommentar5) ; $i++) {
   $Check=substr($Kommentar4,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<64){$X=$i;}
  }
  $i=$X;
  $Kommentar5=substr($Kommentar5,0,$i);
  $Kommentar5=$Kommentar5.'¤';
 }
 // $TextLen=$pdf->GetStringWidth($Kommentar5);
 // $pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+$M+1,$OrigoY+$T+17.5,$Kommentar5);



$TC=$pdf->GetStringWidth($Kommentar6);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>60){
  for ($i = 1; $i<=strlen($Kommentar6) ; $i++) {
   $Check=substr($Kommentar6,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<64){$X=$i;}
  }
  $i=$X;
  $Kommentar6=substr($Kommentar6,0,$i);
  $Kommentar6=$Kommentar6.'¤';
 }
 // $TextLen=$pdf->GetStringWidth($Kommentar6);
 // $pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+$M+1,$OrigoY+$T+20.4,$Kommentar6);



$TC=$pdf->GetStringWidth($Kommentar7);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>60){
  for ($i = 1; $i<=strlen($Kommentar7) ; $i++) {
   $Check=substr($Kommentar7,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<64){$X=$i;}
  }
  $i=$X;
  $Kommentar7=substr($Kommentar7,0,$i);
  $Kommentar7=$Kommentar7.'¤';
 }
 // $TextLen=$pdf->GetStringWidth($Kommentar7);
 // $pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+$M+1,$OrigoY+$T+23.3,$Kommentar7);



 $M=(+$RowW+$FixW)/2; $T=$T+$H;  $H=4;  
 $pdf->Rect($OrigoX  ,$OrigoY+$T     ,$M,$H,'D');            //Rad4V
 $Lob=substr($Lob,0,20);
 $pdf->Text($OrigoX+1,$OrigoY+$T+$H-1,'L ö b: '.$Lob.' m');






 
 $pdf->Rect($OrigoX  ,$OrigoY+$T+$H  ,$M,$H,'D');         //Rad5V
 $Axelavstand=substr($Axelavstand,0,14);
 $pdf->Text($OrigoX+1,$OrigoY+$T+$H+$H-1,'Axelavstånd: '.$Axelavstand.' m');



 $pdf->Rect($OrigoX  ,$OrigoY+$T+$H+$H,$M,$H,'D');      //Rad6V
 $LastgransC=substr($LastgransC,0,14);
 $pdf->Text($OrigoX+1,$OrigoY+$T+$H+$H+$H-1 ,'Lastgräns C: '.$LastgransC.' t');



 $pdf->Rect($OrigoX  ,$OrigoY+$T+$H+$H+$H,$M,$H,'D');   //Rad7V
 $Lastytanslangd=substr($Lastytanslangd,0,11);
 $pdf->Text($OrigoX+1,$OrigoY+$T+$H+$H+$H+$H-1    ,'Lastytans längd: '.$Lastytanslangd.' m');



 $pdf->Rect($OrigoX+$M  ,$OrigoY+$T     ,$M,$H,'D');         //Rad4H
 $Golvyta=substr($Golvyta,0,17);
 $pdf->Text($OrigoX+$M+1,$OrigoY+$T+$H-1,'Golvyta: '.$Golvyta.' m²');
 


 $pdf->Rect($OrigoX+$M  ,$OrigoY+$T+$H     ,$M,$H,'D');      //Rad5H
 $Lastvolym=substr($Lastvolym,0,15);
 $pdf->Text($OrigoX+$M+1,$OrigoY+$T+$H+$H-1,'Lastyolym: '.$Lastvolym.' m³');
 

 $pdf->Rect($OrigoX+$M  ,$OrigoY+$T+$H+$H     ,$M,$H,'D');   //Rad6H
 $Sth=substr($Sth,0,3);
 $pdf->Text($OrigoX+$M+1,$OrigoY+$T+$H+$H+$H-1,'Sth: '.$Sth.' km/h');


 
 $pdf->Rect($OrigoX+$M  ,$OrigoY+$T+$H+$H+$H     ,$M,$H,'D');//Rad7H
 $T=$T+$H+$H+$H+$H;  $H=18;   $M=(+$RowW+$FixW);
 //         -,|
 //         X,Y,W,H
 $pdf->Rect($OrigoX     ,$OrigoY+$T,$M,$H,'D');  //Rad8



$TC=$pdf->GetStringWidth($LastInfo);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>50){ //Startar bevakning av raden.
  for ($i = 1; $i<=strlen($LastInfo) ; $i++) {
   $Check=substr($LastInfo,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<65){$X=$i;}//Klipper raden
  }
  $i=$X;
  $LastInfo=substr($LastInfo,0,$i);
  $LastInfo=$LastInfo.'¤';
 }
 $TextLen=$pdf->GetStringWidth($LastInfo);
 //$pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+1   ,$OrigoY+$T+4,'Lastinstruktion:'.$LastInfo);



$TC=$pdf->GetStringWidth($LastInfo1);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>70){
  for ($i = 1; $i<=strlen($LastInfo1); $i++) {
   $Check=substr($LastInfo1,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<85){$X=$i;}
  }
  $i=$X;
  $LastInfo1=substr($LastInfo1,0,$i);
  $LastInfo1=$LastInfo1.'¤';
 }
  //$TextLen=$pdf->GetStringWidth($LastInfo1);
  //$pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+1   ,$OrigoY+$T+8, $LastInfo1);



$TC=$pdf->GetStringWidth($LastInfo2);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>70){
  for ($i = 1; $i<=strlen($LastInfo2) ; $i++) {
   $Check=substr($LastInfo2,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<85){$X=$i;}
  }
  $i=$X;
  $LastInfo2=substr($LastInfo2,0,$i);
  $LastInfo2=$LastInfo2.'¤';
 }
 //$TextLen=$pdf->GetStringWidth($LastInfo2);
 //$pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+1   ,$OrigoY+$T+12,$LastInfo2);



$TC=$pdf->GetStringWidth($LastInfo3);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>70){
  for ($i = 1; $i<=strlen($LastInfo3) ; $i++) {
   $Check=substr($LastInfo3,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<85){$X=$i;}
  }
  $i=$X;
  $LastInfo3=substr($LastInfo3,0,$i);
  $LastInfo3=$LastInfo3.'¤';
 }
 // $TextLen=$pdf->GetStringWidth($LastInfo3);
 // $pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+1   ,$OrigoY+$T+16,$LastInfo3);







$H=100;
 $ModellRullblock=substr($ModellRullblock,0,4);
 if ($ModellRullblock=='Nej'){
 $pdf->Text($OrigoX+1   ,$OrigoY+$T+21,'Ej rullbocksgodkänd');
 }else{
 $pdf->Text($OrigoX+1   ,$OrigoY+$T+21,'Rullbocksgodkänd');
 }
 //  './uploads/'.$Images                          X             Y             W  H
 if (file_exists('./uploads/'.$Images ))
 {
  $pdf->Image('./uploads/'.$Images,$OrigoX+($M-$SidaAImagesW)-1   ,$OrigoY+$T+19,$SidaAImagesW,$SidaAImagesH);
 }
 //$pdf->SetFillColor(255,255,255);
 //$pdf->SetDrawColor(0,0,0);


 $pdf->AddPage('');



// -- B sida --
 //         -,|
 //         X,Y,W,H
$Red  =substr($cardcolor,0,3);
$Green=substr($cardcolor,4,3);
$Blue =substr($cardcolor,8,3);
$pdf->SetFillColor($Red,$Green,$Blue);//Bakgrundsfärg på sida A
 $pdf->Rect($OrigoX   ,$OrigoY,$SidaW,$SidaH,'DF'); //Sida B ram
 $RowH=12;
 $pdf->SetFontSize(25);
// $pdf->SetFont('','B',40);
 $pdf->Rect($OrigoX,$OrigoY,$SidaW,$RowH,'D');  //Rad 1
 $pdf->Text($OrigoX+1 ,$OrigoY+$RowH-3,$Tagsystem.' '.$Vagnsnummer.' '.$Littra);
 


 if (file_exists('./uploads/'.$Images ))
  {
   $T=$RowH;  $RowH=60;
   $pdf->Rect($OrigoX,$OrigoY+$T,$SidaW,$RowH,'D');  //Rad 2
   //                             X             Y                            W  H
   $pdf->Image('./uploads/'.$Images ,$OrigoX+(($SidaW/2)-(96/2))   ,$OrigoY+$T+1,96,58);
   //                                     ^--0=Vänsterkant
   //                                     +--$SidaW=Högerkant
   //
  }
 $T=$T+$RowH; $RowH=12; $RowW=($SidaW/4)*3;
 $pdf->Rect($OrigoX,$OrigoY+$T,$RowW,$RowH,'D');  //Rad 3V
 $pdf->SetFontSize(8);



$TC=$pdf->GetStringWidth($ModellSpecialID0);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>70){
  for ($i = 1; $i<=strlen($ModellSpecialID0) ; $i++) {
   $Check=substr($ModellSpecialID0,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<80){$X=$i;}
  }
  $i=$X;
  $ModellSpecialID0=substr($ModellSpecialID0,0,$i);
  $ModellSpecialID0=$ModellSpecialID0.'¤';
 }
  //$TextLen=$pdf->GetStringWidth($ModellSpecialID0);
  //$pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+1 ,$OrigoY+$T+3,'Särskilda kännetecken:'.$ModellSpecialID0);



$TC=$pdf->GetStringWidth($ModellSpecialID1);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>90){
  for ($i = 1; $i<=strlen($ModellSpecialID1) ; $i++) {
   $Check=substr($ModellSpecialID1,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<109){$X=$i;}
  }
  $i=$X;
  $ModellSpecialID1=substr($ModellSpecialID1,0,$i);
  $ModellSpecialID1=$ModellSpecialID1.'¤';
 }
 //$TextLen=$pdf->GetStringWidth($ModellSpecialID1);
 //$pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+1 ,$OrigoY+$T+5.5,''.$ModellSpecialID1);



$TC=$pdf->GetStringWidth($ModellSpecialID2);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>90){
  for ($i = 1; $i<=strlen($ModellSpecialID2) ; $i++) {
   $Check=substr($ModellSpecialID2,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<109){$X=$i;}
  }
  $i=$X;
  $ModellSpecialID2=substr($ModellSpecialID2,0,$i);
  $ModellSpecialID2=$ModellSpecialID2.'¤';
 }
 // $TextLen=$pdf->GetStringWidth($ModellSpecialID2);
 // $pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+1 ,$OrigoY+$T+8.3,''.$ModellSpecialID2);



$TC=$pdf->GetStringWidth($ModellSpecialID3);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>90){
  for ($i = 1; $i<=strlen($ModellSpecialID3) ; $i++) {
   $Check=substr($ModellSpecialID3,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<109){$X=$i;}
  }
  $i=$X;
  $ModellSpecialID3=substr($ModellSpecialID3,0,$i);
  $ModellSpecialID3=$ModellSpecialID3.'¤';
 }
 // $TextLen=$pdf->GetStringWidth($ModellSpecialID3);
 // $pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+1 ,$OrigoY+$T+10.9,''.$ModellSpecialID3);



 $pdf->Rect($OrigoX+$RowW   ,$OrigoY+$T,$SidaW-$RowW,$RowH,'D');  //Rad 3H
 $pdf->Text($OrigoX+$RowW+1 ,$OrigoY+$T+3 ,'Märkning under vagnen:');
 
 $pdf->SetFontSize(23);
$TC=$pdf->GetStringWidth($ModellVagnID);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>40){
  for ($i = 1; $i<=strlen($ModellVagnID) ; $i++) {
   $Check=substr($ModellVagnID,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<35){$X=$i;}
  }
  $i=$X;
  $ModellVagnID=substr($ModellVagnID,0,$i);
  $ModellVagnID=$ModellVagnID.'¤';
 }
 //$TextLen=$pdf->GetStringWidth($ModellVagnID);
 //$pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+$RowW+1 ,$OrigoY+$T+9.7 ,$ModellVagnID);
 $pdf->SetFontSize(8);

 //$pdf->Text($OrigoX+$RowW+1 ,$OrigoY+$T+9 ,$ModellVagnID1);
 //$pdf->Text($OrigoX+$RowW+1 ,$OrigoY+$T+12,$ModellVagnID);
 //$pdf->SetXY($OrigoX+$RowW,$OrigoY+$T);
 //$pdf->Cell(25,17,'Markning under vagnen: '.$ModellVagnID,1,1,'L',true);
 //$pdf->Ln(2);


 if ($ModellVagnID=='')
 {
  if (file_exists('./uploads/'.$ModellVagnBildfil ))
  {
   //                                          X(Längd)       Y(Höjd)          W  H
   $pdf->Image('./uploads/'.$ModellVagnBildfil,$OrigoX+113   ,$OrigoY+75.6,36,8);
   //                                     ^--0=Vänsterkant
   //                                     +--$SidaW=Högerkant
   //
  }
 }


 $RowW=$SidaW/4;  $T=$T+$RowH;  $RowH=16;
 $pdf->Rect($OrigoX,$OrigoY+$T,$RowW,$RowH,'D');  //Rad 4-Owner box
$TC=$pdf->GetStringWidth($ModellAgare1);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>33){
  for ($i = 1; $i<=strlen($ModellAgare1) ; $i++) {
   $Check=substr($ModellAgare1,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<35.5){$X=$i;}
  }
  $i=$X;
  $ModellAgare1=substr($ModellAgare1,0,$i);
  $ModellAgare1=$ModellAgare1.'¤';
 }
 //$TextLen=$pdf->GetStringWidth($ModellAgare1);
 //$pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+1 ,$OrigoY+$T+3,$ModellAgare1);



$TC=$pdf->GetStringWidth($ModellAgare2);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>33){
  for ($i = 1; $i<=strlen($ModellAgare2) ; $i++) {
   $Check=substr($ModellAgare2,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<35.5){$X=$i;}
  }
  $i=$X;
  $ModellAgare2=substr($ModellAgare2,0,$i);
  $ModellAgare2=$ModellAgare2.'¤';
 }
 //$TextLen=$pdf->GetStringWidth($ModellAgare2);
 //$pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+1 ,$OrigoY+$T+6,$ModellAgare2);



$TC=$pdf->GetStringWidth($ModellAgare3);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>33){
  for ($i = 1; $i<=strlen($ModellAgare3) ; $i++) {
   $Check=substr($ModellAgare3,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<35.5){$X=$i;}
  }
  $i=$X;
  $ModellAgare3=substr($ModellAgare3,0,$i);
  $ModellAgare3=$ModellAgare3.'¤';
 }
 //$TextLen=$pdf->GetStringWidth($ModellAgare3);
 //$pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+1 ,$OrigoY+$T+9,$ModellAgare3);



$TC=$pdf->GetStringWidth($ModellAgare4);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>33){
  for ($i = 1; $i<=strlen($ModellAgare4) ; $i++) {
   $Check=substr($ModellAgare4,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<35.5){$X=$i;}
  }
  $i=$X;
  $ModellAgare4=substr($ModellAgare4,0,$i);
  $ModellAgare4=$ModellAgare4.'¤';
 }
 //$TextLen=$pdf->GetStringWidth($ModellAgare4);
 //$pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+1 ,$OrigoY+$T+12,$ModellAgare4);



$TC=$pdf->GetStringWidth($ModellAgare5);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>33){
  for ($i = 1; $i<=strlen($ModellAgare5) ; $i++) {
   $Check=substr($ModellAgare5,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<35.5){$X=$i;}
  }
  $i=$X;
  $ModellAgare5=substr($ModellAgare5,0,$i);
  $ModellAgare5=$ModellAgare5.'¤';
 }
 //$TextLen=$pdf->GetStringWidth($ModellAgare5);
 //$pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+1 ,$OrigoY+$T+15,$ModellAgare5);



 $RowH=4; $T=$T;
 //$pdf->SetDrawColor(0,0,255);
 $pdf->Rect($OrigoX+$RowW         ,$OrigoY+$T,$SidaW-$RowW,$RowH,'D');  //Rad 5-Tillverkare
 $TC=$pdf->GetStringWidth($ModellTillverkare);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>90){
  for ($i = 1; $i<=strlen($ModellTillverkare) ; $i++) {
   $Check=substr($ModellTillverkare,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<95){$X=$i;}
  }
  $i=$X;
  $ModellTillverkare=substr($ModellTillverkare,0,$i);
  $ModellTillverkare=$ModellTillverkare.'¤';
 }
 //$TextLen=$pdf->GetStringWidth($ModellTillverkare);
 //$pdf->Text(5 ,15,$TextLen);
  $pdf->Text($OrigoX+$RowW+1      ,$OrigoY+$T+3,'Tillverkare: '.$ModellTillverkare);
 //$pdf->SetDrawColor(0,0,0);



 $pdf->Rect($OrigoX+$RowW         ,$OrigoY+$T+$RowH   ,$RowW,$RowH,'D');  //Rad 6V
 $pdf->Text($OrigoX+$RowW+1       ,$OrigoY+$T+$RowH+3 ,'L ö d: '.$ModellLob.' mm');



 $pdf->Rect($OrigoX+$RowW         ,$OrigoY+$T+$RowH+$RowH  ,$RowW,$RowH,'D');  //Rad 7V
 $pdf->Text($OrigoX+$RowW+1       ,$OrigoY+$T+$RowH+$RowH+3,'Vikt: '.$ModellVikt.' g');



 $pdf->Rect($OrigoX+$RowW         ,$OrigoY+$T+$RowH+$RowH+$RowH,$RowW,$RowH,'D');  //Rad 8V
 $TC=$pdf->GetStringWidth($ModellHjulprofil);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>15){
  for ($i = 1; $i<=strlen($ModellHjulprofil) ; $i++) {
   $Check=substr($ModellHjulprofil,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<23){$X=$i;}
  }
  $i=$X;
  $ModellHjulprofil=substr($ModellHjulprofil,0,$i);
  $ModellHjulprofil=$ModellHjulprofil.'¤';
 }
 //$TextLen=$pdf->GetStringWidth($ModellHjulprofil);
 //$pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+$RowW+1   ,$OrigoY+$T+$RowH+$RowH+$RowH+3,'Hjulprofil: '.$ModellHjulprofil);



 $pdf->Rect($OrigoX+$RowW+$RowW   ,$OrigoY+$T+$RowH  ,$RowW,$RowH,'D');  //Rad 6M
 $TC=$pdf->GetStringWidth($ModellKopell);//
 //$pdf->Text(5 ,5,$TC);
 if ($TC>35){
  for ($i = 1; $i<=strlen($ModellKopell) ; $i++) {
   $Check=substr($ModellKopell,0,$i);
   $TC=$pdf->GetStringWidth($Check);//
   if ($TC<36.5){$X=$i;}
  }
  $i=$X;
  $ModellKopell=substr($ModellKopell,0,$i);
  $ModellKopell=$ModellKopell.'¤';
 }
 //$TextLen=$pdf->GetStringWidth($ModellKopell);
 //$pdf->Text(5 ,15,$TextLen);
 $pdf->Text($OrigoX+$RowW+$RowW+1 ,$OrigoY+$T+$RowH+3,$ModellKopell.'X');



 $pdf->Rect($OrigoX+$ROwW+$RowW   ,$OrigoY+$T+$RowH+$RowH,$RowW,$RowH,'D');  //Rad 7M
 $ModellRullblock=substr($ModellRullblock,0,4);
 if ($ModellRullblock=='Nej'){
 $pdf->Text($OrigoX+$RowW+$RowW+1 ,$OrigoY+$T+$RowH+$RowH+3,'Ej rullbocksgodkänd');
 }else{
 $pdf->Text($OrigoX+$RowW+$RowW+1 ,$OrigoY+$T+$RowH+$RowH+3,'Rullbocksgodkänd');
 }



 $pdf->Rect($OrigoX+$RowW+$RowW   ,$OrigoY+$T+$RowH+$RowH+$RowH,$RowW,$RowH,'D');  //Rad 8M
 $pdf->Text($OrigoX+$RowW+$RowW+1 ,$OrigoY+$T+$RowH+$RowH+$RowH+3,'Modell Art#');



 $pdf->Rect($OrigoX+$RowW+$RowW+$RowW,$OrigoY+$T+$RowH,$RowW,$RowH,'D');  //Rad 6H
 $pdf->Rect($OrigoX+$RowW+$RowW+$RowW,$OrigoY+$T+$RowH+$RowH,$RowW,$RowH,'D');  //Rad 7H
 $pdf->Rect($OrigoX+$RowW+$RowW+$RowW,$OrigoY+$T+$RowH+$RowH+$RowH,$RowW,$RowH,'D');  //Rad 8H



 





 // --- B end --------------------------------------------------

Kod: Markera allt

 // --- C ------------------------------------------------------
 $pdf->Output("I","$fileInfo.pdf");
 //}
?>

Användar källfil:
[Code=php file=Omk.txt]
// --- Datafile start ------------------------------------------------
// Instruktioner för att använda denna mall.
//
// Du ska INTE röra något till vänster om = tecknet.
// Bilder som laddas inte om de inte finns uppladdade.
// Filnamnen MÅSTE stämma med stora/små bokstäver och ändelsser.
// Om du får ¤-tecknet på någon text så betyder det att texten är för lång.
// ; måste finnas på varje rad och på den plats som är i denna mall.
// Om du ändrar något i denna mall måste du klicka på [Skapa grund filer för PDF:er och lista] knappen.
// -------------------------------------------------------------------


 $cardcolor="255,255,255";                        //Bakgrunsfräg till hela kortet (Red,Green,Blue 000=Svart 255=vitt)
// Bakgrundsfärgen sätta automatiskt via UIC om det inte hittas där kommer färgkoden cardcolor att användas.

 $Vagnsnummer='805 8 635-2';                      //Siffror max 7 tecken
 $Littra='lbblps-v';                              //Bokstäver automatisk klipper texten till 28pixel bredd.
 $UIC='l';                                        //Bokstäver max 8 tecken
 $Epok='IV';                                       
 $Tidsrymd='1940-1960';
 $Stationsort='Svdejekåleby';                     //Automatiskt klipper raden 
 $StationsTcolor="255,255,255";                   //Textfärg på stationsnamnet
 $StationsBcolor="000,000,255";                   //Bakrundsfärg till stationsnamnet
 $Tagsystem='SJ';                                 //Bokstäver max 3 tecken
 $Tagsystembild='DB.png';                         //Låst till 28x13mm förhållande: 2,15:1
 $Kommentar0='';                                  //Kommentar rad 1, automatiskt klipper raden.
 $Kommentar1='';                                  //Kommentar rad 2, automatiskt klipper raden.
 $Kommentar2='';                                  //Kommentar rad 3, automatiskt klipper raden.
 $Kommentar3='';                                  //Kommentar rad 4, automatiskt klipper raden.
 $Kommentar4='';                                  //Kommentar rad 5, automatiskt klipper raden.
 $Kommentar5='';                                  //Kommentar rad 6, automatiskt klipper raden.
 $Kommentar6='';                                  //Kommentar rad 7, automatiskt klipper raden.
 $Kommentar7='';                                  //Kommentar rad 8, automatiskt klipper raden.
 $Lob='8,83';                                     //Automatiskt klipper raden Siffror och . ,
 $Golvyta='16,39';                                //Automatiskt klipper raden Siffror och . ,
 $Axelavstand='3,95';                             //Automatiskt klipper raden Siffror och . ,
 $Lastvolym='28,53';                              //Endast siffror och . ,
 $LastgransC='20,00';                             //Endast siffror och . ,
 $Sth='100';                                      //Endast 3 tecken, 0-99=0 rött sträck, 100-119=1 rött streck 120-> =2 röda streck
 $Lastytanslangd='6,49';                          //Endast siffror och . ,
 $LastInfo ='';                                   //Automatiskt klipper raden 
 $LastInfo1='';                                   //Automatiskt klipper raden 
 $LastInfo2='';                                   //Automatiskt klipper raden 
 $LastInfo3='';                                   //Automatiskt klipper raden 
 $ModellSpecialID0='';                            //Särskilda kännetecken rad 1 - Automatiskt klipper raden  
 $ModellSpecialID1='';                            //Särskilda kännetecken rad 2 - Automatiskt klipper raden 
 $ModellSpecialID2='';                            //Särskilda kännetecken rad 3 - Automatiskt klipper raden 
 $ModellSpecialID3='';                            //Särskilda kännetecken rad 3 - Automatiskt klipper raden 
 $ModellVagnID='';                                //Bokstäver & siffror max 10 tecken
 $ModellVagnBildfil='lgrfbs.png';                 //Bilden visa endast om ..VagnID='' (är tom på tecken) Låst till: 30x8 pixel
 $ModellAgare1='Robert Halvarsson ';              //Automatiskt klipper raden 
 $ModellAgare2='robert@halvarsson.as ';           //Automatiskt klipper raden 
 $ModellAgare3='070-294-2946635';                 //Automatiskt klipper raden 
 $ModellAgare4='';                                //Automatiskt klipper raden 
 $ModellAgare5='';                                //Automatiskt klipper raden 
 $ModellTillverkare='';                           //Automatiskt klipper raden 
 $ModellRullblock='Ja';                           //Nej/Ja - Kom ihåg det är strikt syntax på detta.
 $ModellHjulprofil='NEM';                         //Bokstäver & siffror max 10 tecken
 $ModellKopell='Kortkoppelkuliss, ej fixerad';    //Bokstäver & siffror max 80 tecken
 $ModellVikt='30';                                //Siffror och . ,
 $ModellLob='101,9';                              //Siffror och . ,
 $RIV='Nej';                                      //Nej/Ja - Kom ihåg det är strikt syntax på detta.
 $Images="Omk-7021.png";                          //Bildfil png/jpg
 $OrginalImagesW=1833;                            //Pixel - Bredd
 $OrginalImagesH=820;                             //Pixel - Höjd
 // --- Datafile end ------------------------------------------------
[/code]
BJ
Inlägg: 8185
Blev medlem: 11 april 2007, 08:14:53
Ort: En_stad

Re: Omvanda eget PHP script till fler användare script.

Inlägg av BJ »

så måste man ha en databas för att göra ett login system?

Det här gäller bara inloggning:

Om man vet användarnas uppgifter i förväg
och bara en behöver kunna vara inloggad
i taget, så behövs det ingen databas, utan
det går att hårdprogrammera. Tyvärr kan jag
inte visa några källfiler.

Annars är databaser inte så svåra att använda.
Det blir mycket programmering, men dom gör
det man säger till dom, och inget annat. :)
Skriv svar