• 25-08-2021, 14:10:47
    #1
    Üyeliği durduruldu
    Merhaba ArkadaÅŸlar...

    Node.js ile socket io başarılı bir şekilde kurdum ve mini bir chat sistemi yaptım. Benim chat sistemim index.html üzerinde çalışıyor. Fakat ben bu index.html dosyasını index.php yaptığımda cannot get hatası alıyorum. Chat uygulamamı index.php dosyasına nasıl çevirebilirim ?

    index.php
    <html>
    <head>
    <title>chat</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/4.1.3/socket.io.js" integrity="sha512-PU5S6BA03fRv1Q5fpwXjg5nlRrgdoguZ74urFInkbABMCENyx5oP3hrDzYMMPh3qdLdknIvrGj3yqZ4JuU7Nag==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
    
    </head>
    <body>
    
    <div id="chat-wrap">
        <div id="chat-window">
        
            <div id="output"></div>
            <div id="feedback"></div>
            
    
        </div>
        
        <input type="text" id="sender" placeholder="adınız">
        
        
        <div id="myform">
        <form>
        
        <input type="radio" id="sik" name="sik" value="a">
        
        <input type="radio" id="sik" name="sik" value="b">
        
        <input type="radio" id="sik" name="sik" value="c">
        
        <input type="radio" id="sik" name="sik" value="d">
        
        </form>
        </div>
        
        
        <input type="text" id="message" placeholder="mesaj">
        <button id="submitBtn">Gönder</button>
        
    </div>
    
    <script src="chat.js"></script>
    </body>
    </html>
    server.js
    const express = require ('express');
    const socket = require ('socket.io');
    
    const app = express();
    
    const server = app.listen ('3000');
    
    app.use (express.static('hoho/'));
    
    
    const io = socket (server);
    
    
    io.on ('connection', (socket) => {
        
        console.log (socket.id);
        
        socket.on ('chat', data => {
        
        io.sockets.emit('chat',data);
        
        });
        
        socket.on ('typing' , data => {
            
            socket.broadcast.emit ('typing', data);
        });
        
    });
    chat.js
    const socket = io.connect ('http://localhost:3000');
    
    const sender = document.getElementById ('sender');
    
    const message = document.getElementById ('message');
    
    const submitBtn = document.getElementById ('submitBtn');
    
    const output = document.getElementById ('output');
    
    const feedback = document.getElementById ('feedback');
    
    submitBtn.addEventListener ('click' , () => {
        
        socket.emit ('chat', {
            
            message: message.value,
            sender: sender.value
        });
    });
    
    socket.on('chat' , data => {
        feedback.innerHTML = '';
        output.innerHTML += '<p><strong>' + data.sender + ': <strong> ' + data.message + '</p>';
    });
    
    socket.on ('typing' , data => {
            
            feedback.innerHTML = '<p>' + data + '</p>';
        });
        
    $(document).ready(function(){
    
        
         $("#sik").click(function(){
           var hangisik = $('input[name=sik]:checked', '#myform').val();
    
           $('#sender, #message').val(hangisik);
        });
        
    });
  • 25-08-2021, 14:15:15
    #2
    Cannot GET hatası alıyor iseniz sunucuda PHP kurulu değildir muhtemelen.
  • 25-08-2021, 14:35:02
    #3
    Üyeliği durduruldu
    profweb adlı üyeden alıntı: mesajı görüntüle
    Cannot GET hatası alıyor iseniz sunucuda PHP kurulu değildir muhtemelen.
    Sunucu üzerinde değil, localde çalışıyorum.
  • 25-08-2021, 14:41:04
    #4
    mucahitguner adlı üyeden alıntı: mesajı görüntüle
    Sunucu üzerinde değil, localde çalışıyorum.
    Fark etmiyor, Node.js çalışma ortamı üzerinde PHP çalıştırmayı deniyorsunuz.
    Node.js PHP çalıştıramaz, bunun için ayrı olarak bir PHP ortamı kurmalısınız. XAMPP gibi.
  • 25-08-2021, 14:42:05
    #5
    Üyeliği durduruldu
    profweb adlı üyeden alıntı: mesajı görüntüle
    Fark etmiyor, Node.js çalışma ortamı üzerinde PHP çalıştırmayı deniyorsunuz.
    Node.js PHP çalıştıramaz, bunun için ayrı olarak bir PHP ortamı kurmalısınız. XAMPP gibi.
    Wamp Server kurulu ve çalışıyor.
  • 25-08-2021, 14:44:02
    #6
    mucahitguner adlı üyeden alıntı: mesajı görüntüle
    Wamp Server kurulu ve çalışıyor.
    O halde PHP dosyasını PHP ortamına taşıyıp, Apache port'u üzerinden istek göndermeniz gerekiyor.
  • 25-08-2021, 14:47:30
    #7
    Üyeliği durduruldu
    profweb adlı üyeden alıntı: mesajı görüntüle
    O halde PHP dosyasını PHP ortamına taşıyıp, Apache port'u üzerinden istek göndermeniz gerekiyor.
    Hocam dosyalar wampserver www klasöründe. index.html uzantısı çalışıyor. index.php çalışmıyor. Apache portu üzerinden nasıl istek göndereceğim localde
  • 25-08-2021, 14:50:51
    #8
    mucahitguner adlı üyeden alıntı: mesajı görüntüle
    Hocam dosyalar wampserver www klasöründe. index.html uzantısı çalışıyor. index.php çalışmıyor. Apache portu üzerinden nasıl istek göndereceğim localde
    HTML her halükarda çalışacaktır zaten, çünkü herhangi bir server yazılımına ihtiyaç duymaz.
    Apache port'u üzerinden istek göndermek için, örneğin XAMPP panelinde şu şekilde yazıyor.

    Wampserver'de de aynı şekilde port yazıyor olması gerek.
    localhost:80/index.php
    Şeklinde istek gönderebilirsiniz.
  • 25-08-2021, 14:55:38
    #9
    Wampserver üzerinde dediğiniz alanda başka bir PHP dosyası çalıştırmayı denediğiniz de sorunsuz bir şekilde basit bir kod parçası çalıştırabiliyor musunuz?

    Eğer çalışıyor ise sorun PHP ile alakalı değildir ve port ayarlamaları ile alakalı olabilir veya socket verilerini yazdırma işlemlerinizde php'de bir kodlama hatası olabilir.