Po kliknięciu "submit" formularz przeładowuje się i nie wysyła danych.

0

Witam! Na początek kod mojego formularza:

<form action="dodaj_zyczenie.html" method="POST" >
	<table>
	<tr>
		<td width="150px" style="text-align: right" valign="top">
			<b>1.</b> Twoje imię*:</br>
			<p1><b>Wymagane</b></p1>
		</td>
		<td style="text-align: left" valign="top">
			<input type="text" name="imie">		
		</td>
	</tr>

	<tr>
		<td style="text-align: right" valign="top">
			<b>2.</b> Życzenia*:</br>	
			<p1><b>Wymagane</b></p1>
		</td>
		<td>
			<textarea name="zyczenia" cols="5" rows="5"></textarea>
		</td>
	</tr>
	<tr>
		<td style="text-align: right" valign="top">
			<b>3.</b> Dodaj obrazek:</br>
			<p1>Wklej adres obrazka z sieci</p1>
		
		</td>
		<td style="text-align: left" valign="top">
			<input style="width: 100%" type="text" name="obrazek">	
		</td>
	
	
	</tr>
	<tr>
		<td style="text-align: right" valign="top">
			<b>4.</b> Dodaj plik:</br>
			<p1>Wklej plik lub zdjęcie z komputera</p1>
		
		</td >
		<td style="text-align: left" valign="top">
			<input style="width: 100%" type="file" name="plik" >			
		</td>
	
	
	</tr>
	<tr>
		<td style="text-align: right" valign="top">
			<b>5.</b> Adres email</br>
			<p1><b>Nie będzie</b> widoczny</p1>
		
		</td >
		<td style="text-align: left" valign="top">
			<input style="width: 100%" type="text" name="email" >			
		</td>
	</tr>
	<tr>
		<td colspan="2" align="center">
			<input type="submit" value="Dodaj moje życzenia">
		</td>
	</tr>
	</table>
</form>

A plik dodaj_zyczenie.php jest taki:

<?php
$mysqli = mysqli_connect("localhost","root","","zyczenia");

if (mysqli_connect_errno()) {
	printf("Nie udało sie poł±czyć: %s\n", mysqli_connect_error());
	exit();
	} else {
	echo "Udało się połączyć z bazą!";
	$imie=$_POST["imie"];
	echo $imie;
	$sql = "INSERT INTO zyczenia (imie, zyczenia) VALUES ('".$_POST["imie"]."','".$_POST["zyczenia"]."')";
	$rez = mysqli_query($mysqli, $sql);
		
	if ($rez === TRUE) {
		echo "Dodano życzenie!";
	
		} else {
		printf ("Nie udało się dodać życzeń!: %s\n", mysqli_error($mysqli));
	
		}
	mysqli_close($mysqli);
}
?>

Do tego ustawiony mam jeszcze mod_rewrite (nie wiem, czy to coś zmienia w tym przypadku).

RewriteEngine On
RewriteRule ^(.*).html$ index.php?id=$1 [L]

Problem mam taki:
Po kliknięciu submit formularz się zeruje. Nic, co jest w pliku dodaj_zyczenie.php nie jest wyświetlane.

//Okazało się, że po wyłączeniu RewriteRule wszystko działa.
Dlaczego: RewriteRule ^(.*).html$ index.php?id=$1 [L] działa na link *.php skoro powinien zmieniać tylko *.html?

0

Tutaj:
<form action="dodaj_zyczenie.html" method="POST" >
dalej:
RewriteRule ^(.*).html$ index.php?id=$1 [L] czyli zostanie wywołane: index.php?id=dodaj_zyczenie
a kod masz w "dodaj_zyczenie.php" - no to jak ma działać, skoro przesyłasz gdzie indziej?

edit: formatowanie
edit: chyba, że w index.php robisz obsługę tego... a masz dobrze zdefiniowane RewriteBase ?

1 użytkowników online, w tym zalogowanych: 0, gości: 1