- Katılım
- 12 Mar 2024
- Konular
- 49
- Mesajlar
- 65
- Tepkime puanı
- 24
- Çevrimiçi zaman
- 19 saat 7 dakika
- Konum
- samsun
PHP:
<?php
// Dört işlemi gerçekleştiren fonksiyon
function dortIslem($sayi1, $sayi2, $islem) {
// Gerekli parametrelerin dolu olup olmadığını kontrol et
if ($sayi1 === '' || $sayi2 === '' || $islem === '') {
return "Lütfen tüm alanları doldurun!";
}
// Sıfıra bölme hatasını kontrol et
if ($islem === '/' && $sayi2 == 0) {
return "Sıfıra bölme hatası!";
}
// Eğer birinci sayı 0 ise ve işlem bölme (/) ise, sonucu "tanımsız" olarak belirle
if ($sayi1 == 0 && $islem === '/') {
return "Tanımsız";
}
switch ($islem) {
case '+':
return "$sayi1 + $sayi2 = " . ($sayi1 + $sayi2);
case '-':
return "$sayi1 - $sayi2 = " . ($sayi1 - $sayi2);
case '*':
return "$sayi1 * $sayi2 = " . ($sayi1 * $sayi2);
case '/':
return "$sayi1 / $sayi2 = " . ($sayi1 / $sayi2);
default:
return "Geçersiz işlem!";
}
}
// Kullanıcıdan girdileri alma
$sayi1 = $_POST['sayi1'] ?? '';
$sayi2 = $_POST['sayi2'] ?? '';
$islem = $_POST['islem'] ?? '';
// Form submit edildiğinde
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// Girdiler tamamsa işlemi yap ve sonucu ekrana yazdır
$sonuc = dortIslem($sayi1, $sayi2, $islem);
} else {
// Form submit edilmediyse, $sonuc değişkenine varsayılan bir değer verelim
$sonuc = '';
}
?>
<form method="post">
Sayı 1: <input type="number" name="sayi1" value="<?php echo $sayi1; ?>"><br>
Sayı 2: <input type="number" name="sayi2" value="<?php echo $sayi2; ?>"><br><br><br>
<select name="islem">
<option value="">SEÇ</option>
<option value="+" <?php if ($islem === '+') echo 'selected'; ?>>Toplama</option>
<option value="-" <?php if ($islem === '-') echo 'selected'; ?>>Çıkarma</option>
<option value="*" <?php if ($islem === '*') echo 'selected'; ?>>Çarpma</option>
<option value="/" <?php if ($islem === '/') echo 'selected'; ?>>Bölme</option>
</select><br>
<input type="submit" value="Hesapla"><br><br>
</form>
<?php
echo "Seçilen Sayılar: $sayi1, $sayi2 <br>";
echo "Yapılan İşlem: ";
if ($islem === '+') {
echo "Toplama (+)";
} elseif ($islem === '-') {
echo "Çıkarma (-)";
} elseif ($islem === '*') {
echo "Çarpma (*)";
} elseif ($islem === '/') {
echo "Bölme (/)";
} else {
echo "İşlem Seçilmedi";
}
echo "<br>";
echo "Sonuç: " . $sonuç;
?>
- Fonksiyon Tanımı (dortIslem):
- dortIslem adında bir fonksiyon tanımlıyoruz. Bu fonksiyon, kullanıcının girdiği sayılar ve işlem türüne göre dört işlem yapıyor.
- Fonksiyon, üç parametre alır: $sayi1, $sayi2 ve $islem.
- Hata Kontrolü:
- Fonksiyon içinde, gerekli parametrelerin boş olup olmadığını kontrol ediyoruz ($sayi1, $sayi2 ve $islem). Eğer biri boşsa, "Lütfen tüm alanları doldurun!" hatası döndürülür.
- Bölme işlemi yapılıyorsa ve bölen sıfırsa, "Sıfıra bölme hatası!" hatası döndürülür.
- Eğer birinci sayı sıfırsa ve işlem bölme ise, "Tanımsız" hatası döndürülür.
- İşlem Yapma:
- Switch-case yapısı ile, işlem türüne göre gerekli işlem yapılır ve sonuç bir string olarak döndürülür.
- Form Verilerini Alma:
- $sayi1, $sayi2 ve $islem değişkenlerine, formdan POST metoduyla gönderilen verileri alıyoruz.
- Form Gönderildiğinde:
- Eğer form gönderilmişse ($_SERVER["REQUEST_METHOD"] == "POST"), form verilerini kullanarak işlem yapılır (dortIslem fonksiyonu çağrılır) ve sonuç değişkenine atanır.
- Form Gönderilmediğinde:
- Eğer form gönderilmemişse, yani sayfa ilk defa yüklendiğinde veya yenilendiğinde, sonuç değişkeni varsayılan olarak boş olarak atanır.
- Form Alanları ve Buton:
- HTML formunu oluşturuyoruz. Kullanıcıdan iki sayı ve bir işlem seçmesi istenir.
- İlk defa yüklenen sayfada veya sayfa yenilendiğinde, önceki değerler bu alanlara varsayılan olarak yerleştirilir (value="<?php echo $sayi1; ?>" gibi).
- İşlem Sonucunu Gösterme:
- Kullanıcının seçtiği sayıları ve yaptığı işlemi ekrana basıyoruz.
- Eğer bir işlem seçilmediyse, "İşlem Seçilmedi" mesajı gösterilir.
- Son olarak, işlem sonucu ekrana basılır.