2011-06-16 4 views
9

yönlendirir. Başlangıçta işe yaradı. Her nasılsa, birkaç gün sonra beni XAMPP localhost ana sayfasına (http: // localhost/xampp /) yönlendirmeye başladı. Hiçbir fikrim var neden:/İşteHTML Formülü Yani, burada ben <p></p> ben pes ve bir veritabanına bir formdan veri aktarmak için kendi php/html senaryo programlanmış '-.- başka Problem ile tekrar duyuyorum XAMPP localhost Ana-Sayfa

var Web sitem nasıl görüneceği gibi:

  • index.php benim ziyaretçi defteri-komut dahil
    • tüm diğer (Switch-case üzerinden) komut
    • (anahtar durumunda yok!) Her zaman var! Benim "addguestbook.php" nasıl göründüğünü

İşte böyle: index.php

<?php 

...database stuff... 

if ($_SERVER['REQUEST_METHOD'] == 'POST'){ 

    $name = $_POST['name']; 
    $email = $_POST['email']; 
    $website = $_POST['website']; 
    $comment = $_POST['comment']; 
    $datetime = date("l, jS M Y, g:i a"); //date time 

    // Connect to server and select database. 
    mysql_connect($host, $username, $password)or die("cannot connect server: ".mysql_error()); 
    mysql_select_db($db_name)or die("cannot select DB: ".mysql_error()); 

    $sql="INSERT INTO ".$tbl_name."(id, name, email, website, comment, datetime)VALUES('".$post_id."', '".$name."', '".$email."', '".$website."', '".$comment."', '".$datetime."')"; 
    $result=mysql_query($sql); 

    mysql_close(); 

    header('Location: http://'.$hostname.$path.'/index.php' . $get, true, 303); 
}?> 

<form action="index.php<? echo $get; ?>" method="post"> 
    <table border="0" cellspacing="0" cellpadding="0"> 
     <tr> 
      <td class="guestbookFormCell" colspan='2'><input 
       class="guestbookInputFieldText" name="name" type="text" 
       value="Name *" size="40" maxlength="30" /></td> 
     </tr> 
     <tr> 
      <td class="guestbookFormCell" colspan='2'><input 
       class="guestbookInputFieldText" name="email" type="text" 
       value="E-Mail (won't become displayed)" size="40" maxlength="40" /> 
      </td> 
     </tr> 
     <tr> 
      <td class="guestbookFormCell" colspan='2'><input 
       class="guestbookInputFieldText" name="website" type="text" 
       value="Website" size="40" maxlength="50" /></td> 
     </tr> 
     <tr> 
      <td class="guestbookFormCell" colspan='2'><textarea 
        class="guestbookInputFieldText" name="comment" cols="37" rows="5">Comment *</textarea> 
      </td> 
     </tr> 
     <!-- 
     <tr> 
      <td>CAPTCHA</td> 
     </tr> 
     --> 
     <tr> 
      <td><button class="guestbookFormCell guestbookButton" type="submit" 
        name="submit"> 
        <span class='guestbookButtonText'>Send</span> 
       </button></td> 
      <td><button class="guestbookFormCell guestbookButton" style="float:right;"type="reset" 
        name="reset"> 
        <span class='guestbookButtonText'>Reset</span> 
       </button></td> 
     </tr> 
    </table> 
</form> 

: Bu komut dosyası birkaç şeyler için kullanılır

   $get = "?mod=home"; 

: genel gueastbook Sayfaya güncelle & resim/albümleri.

Not: Herhangi bir nedenden ötürü, iş parçasının başlangıcında merhaba diyemedim:/Eğer bu kabalık geldiyse, üzgünüm!

PSS: Hatayı aldım.

Pretty dilsiz :)

ben sadece forum aslında kök dizininde index.php (bu durumda) adına yönlendirme yapması unuttum. Bu Xampp/htdocs/index.php anlamına gelir. Sadece şunu

linki düzeltmek ve ben iyi -.-'

+2

'PS: i nedense, iplik başında hello yazmak değil olabilir: bu kaba geldi/ederse , üzgünüm! 'Günün şakası ... :) –

+0

Dostum!123456789 – JustBasti

+0

0 ' –

cevap

0

Ben ancak atarken, sen aslında komut dosyası nasıl çalıştığını anlayamıyorum olarak sorun ne buldunuz sevindim değilim $ adı, $ e-posta, $ web sitesi, vb, mysql_espace_string() kullanmalısınız. Aksi halde, bir kullanıcı kötü amaçlı kod ekleyebilir ve tüm SQL tablosuna erişebilir.

+1

soruda Daha iyisi, parametreli sorguları kullanın (PDO aracılığıyla). –

2

Hemen düzenlemek veya

<meta http-equiv="refresh" content="0;url=/xampp/"> 

En olurdu aşağıdaki satırı orjinal index.html silip kaldırın:

$name = mysql_escape_string($_POST['name']); 
$email = mysql_escape_string($_POST['email']); 
$website = mysql_escape_string($_POST['website']); 
$comment = mysql_escape_string($_POST['comment']); 
$datetime = date("l, jS M Y, g:i a"); // Escaping the string is not necessary here. 

(Ben bir yerli ingilizce konuşmacı değilim. Herhangi bir dil hataları için üzgünüm) önbelleğinizi de temizlerseniz, tarayıcınız yeni herşeyi yüklemek için güvendedir.

endo

DÜZENLEME: Sen yalnız bu sorunla: why-does-my-xampp-installation-auto-redirect-to-http-localhost-xampp

İlgili konular