Çözüldü Okul için site nasıl yapılır?

  • Konuyu başlatan haybq
  • Başlangıç Tarihi
  • Mesaj 12
  • Görüntüleme 574
Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

haybq

Centipat
Katılım
2 Haziran 2024
Mesajlar
167
Daha fazla  
Cinsiyet
Erkek
Okul için bir site yapacağım. Hocalar için öğrencilerin vesikalarını daha kolay bulmaları için. Vesikalar bende var: 9-A, 9-B diye klasorler gidiyor içinde de örnek olarak 111 (isim) diye JPG vesikalar var. Domaine gerek yok, sürekli çalışan arama yerine okul numarası veya isim soy isim yazınca resim veren bir yazılıma ihtiyacım var. İllegal anlamayın proje için. Kodları ve neler yapacağımı yazabilir misiniz?
 
Çözüm
fotolar adında bir klasör oluştur ve içine vesikalıkları at. Yani yapı şu şekilde olacak;

📁fotolar
📁9-A​
🖼️111 (Ali Veli).jpg​
🖼️112 (Ahmet Mehmet).jpg​
📁9-B​
🖼️113 (Sude Naz).jpg​
🖼️114 (Cemre Su).jpg​
📁9-C​
🖼️115 (bla bla).jpg​
🖼️116 (bla bla).jpg​
📁9-D​
🖼️117 (bla bla).jpg​
🖼️118 (bla bla).jpg​
Aşağıdaki kodları da
PHP:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>VESİKA BUL</title>
</head>
<body>
    <h1>VESİKA BUL</h1>
    <form action="vesikalik.php" method="GET">
        <label for="ara">Okul Numarası veya Ad Soyad:</label>
        <input type="text" id="ara" name="ara" required>
        <button type="submit">Ara</button>
    </form>

    <?php
    if (isset($_GET['ara'])) {
        $search = trim($_GET['ara']);
        $baseDir = __DIR__ . '/fotolar';
        $found = false;

        foreach (scandir($baseDir) as $classFolder) {
            if ($classFolder === '.' || $classFolder === '..') continue;

            $classPath = $baseDir . '/' . $classFolder;

            foreach (scandir($classPath) as $file) {
                if ($file === '.' || $file === '..') continue;

                if (stripos($file, $search) !== false) {
                    $imagePath = 'fotolar/' . $classFolder . '/' . $file;
                    echo "<h2>Sonuç:</h2>";
                    echo "<p><strong>$file</strong></p>";
                    echo "<img src='$imagePath' alt='Vesika' style='max-width:300px;'>";
                    $found = true;
                    break 2;
                }
            }
        }

        if (!$found) {
            echo "<p style='color:red;'>Aradığınız kriterlere uygun vesika bulunamadı.</p>";
        }
    }
    ?>
</body>
</html>

bir sayfaya yazıp çalıştırırsan şu şekilde bir sonuç alırsın:
1736273856894.png


ya da

1736273888703.png



 
Son düzenleme:
fotolar adında bir klasör oluştur ve içine vesikalıkları at. Yani yapı şu şekilde olacak;

📁fotolar
📁9-A​
🖼️111 (Ali Veli).jpg​
🖼️112 (Ahmet Mehmet).jpg​
📁9-B​
🖼️113 (Sude Naz).jpg​
🖼️114 (Cemre Su).jpg​
📁9-C​
🖼️115 (bla bla).jpg​
🖼️116 (bla bla).jpg​
📁9-D​
🖼️117 (bla bla).jpg​
🖼️118 (bla bla).jpg​
Aşağıdaki kodları da
PHP:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>VESİKA BUL</title>
</head>
<body>
    <h1>VESİKA BUL</h1>
    <form action="vesikalik.php" method="GET">
        <label for="ara">Okul Numarası veya Ad Soyad:</label>
        <input type="text" id="ara" name="ara" required>
        <button type="submit">Ara</button>
    </form>

    <?php
    if (isset($_GET['ara'])) {
        $search = trim($_GET['ara']);
        $baseDir = __DIR__ . '/fotolar';
        $found = false;

        foreach (scandir($baseDir) as $classFolder) {
            if ($classFolder === '.' || $classFolder === '..') continue;

            $classPath = $baseDir . '/' . $classFolder;

            foreach (scandir($classPath) as $file) {
                if ($file === '.' || $file === '..') continue;

                if (stripos($file, $search) !== false) {
                    $imagePath = 'fotolar/' . $classFolder . '/' . $file;
                    echo "<h2>Sonuç:</h2>";
                    echo "<p><strong>$file</strong></p>";
                    echo "<img src='$imagePath' alt='Vesika' style='max-width:300px;'>";
                    $found = true;
                    break 2;
                }
            }
        }

        if (!$found) {
            echo "<p style='color:red;'>Aradığınız kriterlere uygun vesika bulunamadı.</p>";
        }
    }
    ?>
</body>
</html>

bir sayfaya yazıp çalıştırırsan şu şekilde bir sonuç alırsın:
1736273856894.png


ya da

1736273888703.png
 
Çözüm
fotolar adında bir klasör oluştur ve içine vesikalıkları at. Yani yapı şu şekilde olacak;

📁fotolar
📁9-A​
🖼️111 (Ali Veli).jpg​
🖼️112 (Ahmet Mehmet).jpg​
📁9-B​
🖼️113 (Sude Naz).jpg​
🖼️114 (Cemre Su).jpg​
📁9-C​
🖼️115 (bla bla).jpg​
🖼️116 (bla bla).jpg​
📁9-D​
🖼️117 (bla bla).jpg​
🖼️118 (bla bla).jpg​
Aşağıdaki kodları da
PHP:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>VESİKA BUL</title>
</head>
<body>
    <h1>VESİKA BUL</h1>
    <form action="vesikalik.php" method="GET">
        <label for="ara">Okul Numarası veya Ad Soyad:</label>
        <input type="text" id="ara" name="ara" required>
        <button type="submit">Ara</button>
    </form>

    <?php
    if (isset($_GET['ara'])) {
        $search = trim($_GET['ara']);
        $baseDir = __DIR__ . '/fotolar';
        $found = false;

        foreach (scandir($baseDir) as $classFolder) {
            if ($classFolder === '.' || $classFolder === '..') continue;

            $classPath = $baseDir . '/' . $classFolder;

            foreach (scandir($classPath) as $file) {
                if ($file === '.' || $file === '..') continue;

                if (stripos($file, $search) !== false) {
                    $imagePath = 'fotolar/' . $classFolder . '/' . $file;
                    echo "<h2>Sonuç:</h2>";
                    echo "<p><strong>$file</strong></p>";
                    echo "<img src='$imagePath' alt='Vesika' style='max-width:300px;'>";
                    $found = true;
                    break 2;
                }
            }
        }

        if (!$found) {
            echo "<p style='color:red;'>Aradığınız kriterlere uygun vesika bulunamadı.</p>";
        }
    }
    ?>
</body>
</html>

bir sayfaya yazıp çalıştırırsan şu şekilde bir sonuç alırsın:
Eki Görüntüle 2391255

ya da

Eki Görüntüle 2391256
hocam çok çok teşekkürler ama kodu nereye yazacağım?
 
index.php adında bir sayfa oluştur içine yaz. Önemli olan nerede kullanacağın veya hocana nerede göstereceğin. İnternette barındırmak istiyorsan bir ücretsiz hosting bulman gerek. Ya da ücretini verip alman gerek. Local olarak kullanmak istiyorsan, bilgisayara wampserver veya benzeri bir sunucu kurup içerisinde barındırabilirsin.
 
index.php adında bir sayfa oluştur içine yaz. Önemli olan nerede kullanacağın veya hocana nerede göstereceğin. İnternette barındırmak istiyorsan bir ücretsiz hosting bulman gerek. Ya da ücretini verip alman gerek. Local olarak kullanmak istiyorsan, bilgisayara wampserver veya benzeri bir sunucu kurup içerisinde barındırabilirsin.

Teşekkürler.

index.php adında bir sayfa oluştur içine yaz. Önemli olan nerede kullanacağın veya hocana nerede göstereceğin. İnternette barındırmak istiyorsan bir ücretsiz hosting bulman gerek. Ya da ücretini verip alman gerek. Local olarak kullanmak istiyorsan, bilgisayara wampserver veya benzeri bir sunucu kurup içerisinde barındırabilirsin.
Zamanınızı alıyorum ama XAMPP üzerinden localhostta yapabilir miyim yapabiliyorsam nasıl yaparım adım adım anlatabilir misiniz?
 
Son düzenleme:

Technopat Haberler

Geri
Yukarı