Veri giriş çıkışı yaptığım bir nevi irsaliye şeklinde bir script yazdım, bu scripte teslimat yapan ve alanın fiziki imzasını almam, ekrana attığı imzayı veri tabanı yada ftp ye kaydetmem gerekiyor.
Araştırdım pek bir sonuç alamadım daha önce böyle bir ihtiyacı olup yapan
Yada nasıl yapacağıma dair fikri olan var mı?
Bu işi php ile çözebilir miyiz ?
Veri giriş çıkışında imza alma
2
●112
- 24-05-2023, 15:58:19Sağolsun chatgpt yardımcı oldu bu konuda da
ihtiyacı olan için örnek bir kod bloğu
<?php
// Form gönderildiğinde çalışacak kod
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// MySQL veritabanına bağlanma işlemleri
$servername = "localhost";
$username = "kullanici_adi";
$password = "sifre";
$dbname = "veritabani_adi";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Veritabanı bağlantısı başarısız: " . $conn->connect_error);
}
// POST verilerini al
$imzaVerisi = $_POST['imza']; // JavaScript tarafından gönderilen imza verisi
// Veritabanına ekle
$sql = "INSERT INTO imzalar (imza_verisi) VALUES ('$imzaVerisi')";
if ($conn->query($sql) === TRUE) {
echo "İmza başarıyla kaydedildi.";
} else {
echo "Hata: " . $sql . "<br>" . $conn->error;
}
$conn->close();
}
?>
<!DOCTYPE html>
<html>
<head>
<title>İmza Alanı Örneği</title>
<script src="https://unpkg.com/signature_pad"></script>
</head>
<body>
<h2>İmza Alanı</h2>
<canvas id="imzaCanvas" width="400" height="200" style="border: 1px solid black"></canvas>
<br>
<button onclick="kaydet()">Kaydet</button>
<script>
// İmza alanını oluştur
var canvas = document.getElementById('imzaCanvas');
var signaturePad = new SignaturePad(canvas);
// İmzayı kaydetme fonksiyonu
function kaydet() {
if (signaturePad.isEmpty()) {
alert("Lütfen bir imza yapın.");
} else {
// İmza verisini al
var imzaVerisi = signaturePad.toDataURL();
// İmza verisini PHP'ye gönder
var xhr = new XMLHttpRequest();
xhr.open("POST", "<?php echo $_SERVER['PHP_SELF']; ?>", true);
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhr.onreadystatechange = function () {
if (xhr.readyState === 4 && xhr.status === 200) {
alert(xhr.responseText);
}
};
xhr.send("imza=" + encodeURIComponent(imzaVerisi));
}
}
</script>
</body>
</html>