Provat amb Canon i-sensys LBP212dw amb el driver Canon LBP211/212 UFR II i configurada a CUPS amb el nom provalpd i URL lpd://IP_IMPRESSORA/lp
<!DOCTYPE html>
<html>
<body style="font-family: Arial, Verdana;line-height:30px;">
<form method="post" enctype="multipart/form-data">
<br>Fitxer (només JPG, PNG i PDF): <input type="file" name="fileToUpload" id="fileToUpload">
<br>Còpies: <select name="ncopies">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<br>Impressora: <select name="impressora">
<option value="provalpd">Sistemes</option>
<option value="provalpd">Sistemes</option>
<option value="provalpd">Sistemes</option>
</select>
<input type="hidden" name="enviat" value="si">
<br>
<input type="submit" value="IMPRIMIR" name="submit">
</form>
<?php
/****DEBUG**** = veurem missatges de debug, 0 = no els veurem */
/****DEBUG****/ $debug=1;
/****DEBUG****/ if ($debug==1) { echo "<br>---- debug inici ----<br>"; }
if ($_POST['enviat']=="si") {
$ncopies=$_POST['ncopies'];
$impressora=$_POST['impressora'];
/****DEBUG****/ if ($debug==1) { echo "<br>---- debug 1 ----<br>"; }
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
/****DEBUG****/ if ($debug==1) { echo "<br>---- debug 2 ----<br>"; }
$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));
if(isset($_POST["submit"])) {
/****DEBUG****/ if ($debug==1) { echo "<br>---- debug 3 ----<br>"; }
$mime=mime_content_type($_FILES["fileToUpload"]["tmp_name"]);
if ( ($mime=="application/pdf") || ($mime=="text/plain") || ($mime=="image/png") || ($mime=="image/jpeg") ) {
echo "Fitxer correcte, seguim.";
$uploadOk = 1;
} else {
echo "Fitxer no permès.";
$uploadOk = 0;
}
/****DEBUG****/ if ($debug==1) { echo "<br>---- debug 4 ----<br>"; }
}
/****DEBUG****/ if ($debug==1) { echo "<br>---- debug 5 ----<br>"; }
if ($uploadOk == 0) {
echo "No es pot pujar el fitxer.";
} else {
if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
echo "El fitxer ". htmlspecialchars( basename( $_FILES["fileToUpload"]["name"])). " s'ha guardat i s'enviarà a imprimir.";
shell_exec('lp -n '.$ncopies.' -d '.$impressora.' "/var/www/html/imprimir/uploads/'. htmlspecialchars( basename( $_FILES["fileToUpload"]["name"])).'"');
} else {
echo "Error guardant el fitxer.";
}
}
}
/****DEBUG****/ if ($debug==1) { echo "<br>---- debug fi ----<br>"; }
?>
</body>
</html>