Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php/html] Formularz
Forum PHP.pl > Forum > Przedszkole
Lethys
Mam ten sam blad co ajkis czas, problem polega na tym ze skrypt wczesniej dzialal dobrze w 100% a teraz iedy wgralem go na inna domene ( ten sam serwer ) to juz jest problem z formularzem. Chodzi o to ze po wpisaniu danych do formularza i kliknieciu submit dane znikaja i nic sie nie dzieje. Kiedys jak tak mialem to wylaczalem lub wlaczalem register globals i bylo ok a teraz cos to nie chce dzialac sad.gif


Chodzi o ten formularz:

http://www.blognij.pl/index.php?page=register


Skrypt od strony kodu jest 100% dobry bo wczesniej swietnie dzialal.
kszychu
Na 99% register_globals.
MMX3
php.ini

register_golbals 1

sciana.gif

to ja dodam ten 1% teraz mamy 100
potreb
Raczej nie register globals, bo walidacja formularza działa poprawnie. Gdzieś już ktoś zakładał podobny topic dla tego skryptu blogowego co masz, a może ty.
Lethys
@up Nie ja

Ale dziwne jest to ze wczoraj na innej domenie ale ten sam serwer dzialal ten skrypt sad.gif

Wgrywam i nic nie daje sad.gif Probuje z OFF i ON ale ciagle to samo.
potreb
Pokaż kod z pliku register.
Lethys
Jak mowilem kod jest na 100% dobry no ale daje kod moze cos znajdziesz smile.gif

  1. <?
  2. if($step3!="yes")
  3. {
  4. if($uid){
  5. ?>
  6. <table width="700" border="0" align="center" cellpadding="10" cellspacing="0" class="userbg">
  7. <tr>
  8. <td class="userpanelhd"><strong><?=$lvar[loc_reg];?>: </strong><?=$lvar[pg_pa_ca89];?> </td>
  9. </tr>
  10. <tr>
  11. <td><form id="form1" name="form1" method="post" action="<?=$_SERVER['PHP_SELF'];?>?page=register">
  12. <table width="100%" border="0" align="center" cellpadding="10" cellspacing="1">
  13. <tr>
  14. <td colspan="2" class="userhd"><?=$lvar[pg_pa_ca90];?></td>
  15. </tr>
  16. <?
  17. if($err)
  18. {
  19. ?>
  20. <tr>
  21. <td colspan="2" class="error"><p><strong style="font-size:14px"><?=$lvar[pg_pa_ca91];?> </strong></p></td>
  22. </tr>
  23. <?
  24. }
  25. ?>
  26. <tr>
  27. <td class="usermain"><?=$lvar[pg_pa_ca92];?>: </td>
  28. <td class="usermain"><input name="blogtitle" type="text" id="blogtitle" value="<?=$_POST[blogtitle];?>" /></td>
  29. </tr>
  30. <tr>
  31. <td class="usermain"><?=$lvar[pg_pa_ca93];?>:</td>
  32. <td class="usermain">&nbsp;<? print "www.blognij.pl/" ?><input name="blogname" type="text" id="blogname" value="<?=$_POST[blogname];?>" />
  33. /
  34.  
  35. <?=$err[bname];?></td>
  36. </tr>
  37. <tr>
  38. <td colspan="2" align="right" class="userpanelbg"><input name="step" type="hidden" id="step" value="two" />
  39. <input name="Submit2" type="submit" class="buttons" value="<?=$lvar[pg_pa_ca96];?>" /></td>
  40. </tr>
  41. </table>
  42. </form></td>
  43. </tr>
  44. </table>
  45. <?
  46. }else{
  47. ?>
  48. <table width="700" border="0" align="center" cellpadding="10" cellspacing="0" class="userbg">
  49. <tr>
  50. <td class="userpanelhd"><strong><?=$lvar[loc_reg];?>: </strong><?=$lvar[pg_pa_ca97];?> </td>
  51. </tr>
  52. <tr>
  53. <td><form id="form1" name="form1" method="post" action="<?=$_SERVER['PHP_SELF'];?>?page=register">
  54. <table width="100%" border="0" align="center" cellpadding="10" cellspacing="1">
  55. <tr>
  56. <td colspan="2" class="userhd"><?=$lvar[pg_pa_ca98];?> </td>
  57. </tr>
  58. <?
  59. if($err)
  60. {
  61. ?>
  62. <tr>
  63. <td colspan="2" class="error"><p><strong style="font-size:14px"><?=$lvar[pg_pa_ca99];?> </strong></p></td>
  64. </tr>
  65. <?
  66. }
  67. ?>
  68. <tr>
  69. <td width="200" class="usermain"><?=$lvar[pg_pa_ca100];?>: </td>
  70. <td class="usermain"><input name="user" type="text" id="user" value="<?=$_POST[user];?>" />
  71. <?=$err[user];?></td>
  72. </tr>
  73. <tr>
  74. <td class="usermain"><?=$lvar[pg_pa_ca101];?>:</td>
  75. <td class="usermain"><input name="pass" type="password" id="pass" />
  76. <?=$err[pass];?></td>
  77. </tr>
  78. <tr>
  79. <td class="usermain"><?=$lvar[pg_pa_ca102];?>: </td>
  80. <td class="usermain"><input name="pass2" type="password" id="pass2" />
  81. <?=$err[rish];?></td>
  82. </tr>
  83. <tr>
  84. <td class="usermain"><?=$lvar[pg_pa_ca103];?>: </td>
  85. <td class="usermain"><input name="pubname" type="text" id="pubname" value="<?=$_POST[pubname];?>" /></td>
  86. </tr>
  87. <tr>
  88. <td class="usermain"><?=$lvar[pg_pa_ca104];?>: <br />
  89. <strong style="color:#CC0000"><?=$lvar[pg_pa_ca105];?></strong></td>
  90. <td class="usermain"><input name="email" type="text" id="email" value="<?=$_POST[email];?>" />
  91. <?=$err[ema];?></td>
  92. </tr>
  93. <tr>
  94. <td class="usermain"><?=$lvar[pg_pa_ca106];?> </td>
  95. <td class="usermain"><input name="terms" type="checkbox" id="terms" value="yes" checked="checked" />
  96. Akceptuję<a href="index.php?page=002#2">&nbsp;<b>Regulamin</b></strong></a>
  97. <?=$err[ter];?></td>
  98. </tr>
  99. <tr>
  100. <td colspan="2" align="right" class="userpanelbg"><input name="step" type="hidden" id="step" value="one" />
  101. <input name="Submit" type="submit" class="buttons" id="Submit" value="<?=$lvar[pg_pa_ca107];?>" /></td>
  102. </tr>
  103. </table>
  104. </form></td>
  105. </tr>
  106. </table>
  107. <?
  108. }
  109. }else{
  110. ?>
  111. <table width="700" border="0" align="center" cellpadding="10" cellspacing="0" class="userbg">
  112. <tr>
  113. <td class="userpanelhd"><strong><?=$lvar[loc_reg];?>: </strong><?=$lvar[pg_pa_ca108];?> </td>
  114. </tr>
  115. <tr>
  116. <td><form id="form1" name="form1" method="post" action="<?=$_SERVER['PHP_SELF'];?>?page=register">
  117. <table width="100%" border="0" align="center" cellpadding="10" cellspacing="1">
  118. <tr>
  119. <td class="userhd"><?=$lvar[pg_pa_ca44];?> </td>
  120. </tr>
  121. <?
  122. if($err)
  123. {
  124. ?>
  125. <tr>
  126. <td class="error"><p><strong style="font-size:14px"><?=$lvar[pg_pa_ca99];?> </strong></p></td>
  127. </tr> <?
  128. }
  129. ?>
  130. <tr>
  131. <td class="usermain"><?
  132.  include("listyle.php");
  133.  ?></td>
  134. </tr>
  135. <tr>
  136. <td align="right" class="userpanelbg"><input name="blogid" type="hidden" id="blogid" value="<?=$bid;?>" />
  137. <input name="step" type="hidden" id="step" value="tre" />
  138. <input name="Submit3" type="submit" class="buttons" id="Submit2" value="<?=$lvar[pg_pa_ca110];?>" /></td>
  139. </tr>
  140. </table>
  141. </form></td>
  142. </tr>
  143. </table>
  144. <?
  145. }
  146. ?>
potreb
Tylko pytanie gdzie jest przekazywany cały formularz?? Czy to cały kod. Możliwe że dla całego skryptu jest zastosowana funkcja na register_globals lub poprostu nie da sie jej włączyć spróbuj potestować na lokalu.
Lethys
Na localu dziala dobrze, to musza byc to register globals ale czemu jak zmieniam nic sie nie dzieje ? sad.gif
potreb
Bo możliwe że twój provider nie ma możliwości włączyć rg dla każdego z osobna? Napisz do amina serwa.
Lethys
Ok zmienielem skrypt na zupelnie inny i dziala, nie mam pojecie co bylo zle z tamtym.
kszychu
Restartowałeś serwer po zmianie ustawień register_globals?
bassyl
Witam. Mam taki problem z działaniem tablicy $_POST. Dokładniej mam stworzony formularz, który metodą POST powinien przekazywać wartości zmiennych do pliku php, aby za jego pośrednictwem trafiły do bazy. Niestety tak się nie dzieje. Po wpisaniu danych w formularzu i przesłaniu do pliku php w bazie powstaje nowy rekord, ale całkiem pusty, ponieważ plik php nie widzi tych danych. A tak to wygląda w uproszczonym kodzie:

formularz.html
Kod
<fieldset>

<table width="60%" border="0" cellpadding="0" cellspacing="0"

frame="none">

<legend>Formularz rejestracyjny</legend>
<form action="rejestr2.php" method="post">
<tr>
    <td><b>Nazwa użytkownika:</b></b></td>
    <td><input type="text" name="login" size="25" maxlength="20"

/></td>
</tr>
<tr>
    <td><b>Hasło:</b></td>
    <td><input type="password" name="haslo" size="25"maxlength="20"

/></td>
</tr>
<tr>
    <td><b>Powtórz hasło:</b></td>
    <td><input type="password" name="haslo_powt" size="25"

maxlength="20" /></td>
</tr>
<tr>
    <td><b>Imię:</b></td>
    <td><input type="text" name="imie" size="30" maxlength="30"

/></td>
</tr>
<tr>
    <td><b>Nazwisko:</b></td>
    <td><input type="text" name="nazwisko" size="30" maxlength="30"

/></td>
</tr>
<tr>
    <td><b>Miejscowość:</b></td>
    <td><input type="text" name="miejscowosc" size="30"

maxlength="30" /></td>
</tr>
<tr>
    <td><b>Kod pocztowy:</b></td>
    <td><input type="text" name="kod_pocztowy" size="10"

maxlength="6" /></td>
</tr>
<tr>
    <td><b>Ulica:</b></td>
    <td><input type="text" name="ulica" size="50" maxlength="50"

/></td>
</tr>
<tr>
    <td><b>Numer domu / Numer mieszkania:</b></td>
    <td><input type="text" name="nr_domu" size="10" maxlength="10"

/> / <input type="text" name="nr_mieszkania" size="10" maxlength="10"

/></td>
</tr>
<tr>
    <td><b>Numer telefonu stacjonarnego:</b></td>
    <td><input type="text" name="nr_tel_stac" size="15"

maxlength="10" /></td>
</tr>
<tr>
    <td><b>Numer telefonu komórkowego:</b></td>
    <td><input type="text" name="nr_tel_kom" size="15"

maxlength="10" /></td>
</tr>
<tr>
    <td><b>Numer GG:</b></td>
    <td><input type="text" name="nr_gg" size="10" maxlength="8"

/></td>
</tr>
<tr>
    <td><b>Adres e-mail:</b></td>
    <td><input type="text" name="mail" size="50" maxlength="50"

/></td>
</tr>
<tr>
    <td><input type="reset" name="reset" value="Wyczyść" size="30"

/></td>
    <td><input type="submit" name="submit" value="Wyślij" size="30"

/></td>
</tr>

</form>

</table>
</fieldset>


rejestr2.php
Kod
<html>
<head><title>Katalog</title></head>
<body>
<?php

// utworzenie krótkich nazw zmiennych
$login = $_POST['login'];
$haslo = $_POST['haslo'];
$imie = $_POST['imie'];
$nazwisko = $_POST['nazwisko'];
$miejscowosc = $_POST['miejscowosc'];
$kod_pocztowy = $_POST['kod_pocztowy'];
$ulica = $_POST['ulica'];
$nr_domu = $_POST['nr_domu'];
$nr_mieszkania = $_POST['nr_mieszkania'];
$nr_tel_stac = $_POST['nr_tel_stac'];
$nr_tel_kom = $_POST['nr_tel_kom'];
$nr_gg = $_POST['nr_gg'];
$mail = $_POST['mail'];

//dla sprawdzenia czy plik pobiera dane

echo ("$login <p /> $haslo <p /> $nazwisko");

@ $wynik = new mysqli('127.0.0.1', 'nazwa_uzytkownika', 'haslo', 'baza_danych');
if (mysqli_connect_errno())
{
echo 'Błąd: Połączenie z bazą danych nie powiodło się. Spróbuj jeszcze raz później.';
exit;
}

/*$zadanie = $wynik->query("insert into klient (nazwisko, imie, kod_pocztowy, miejscowosc, ulica, nr_domu, nr_mieszkania, tel_stac,tel_kom, email, gg) values ('$nazwisko', '$imie', '$kod_pocztowy', '$miejscowosc', '$ulica', '$nr_domu', '$nr_mieszkania', '$nr_tel_stac', '$nr_tel_kom', '$mail', '$nr_gg')");*/

$zapytanie = "insert into klient (nazwisko, imie, kod_pocztowy, miejscowosc, ulica, nr_domu, nr_mieszkania, tel_stac,tel_kom, email, gg) values ('$nazwisko', '$imie', '$kod_pocztowy', '$miejscowosc', '$ulica', '$nr_domu', '$nr_mieszkania', '$nr_tel_stac', '$nr_tel_kom', '$mail', '$nr_gg')";

$wstaw = $wynik->query($zapytanie);

if(!$wstaw)
{
echo 'Rejestracja niemożliwa<br><hr>Dotychczasowi użytkownicy:<p />';

$zapytanie = "select klient.nazwisko, haslo.login, haslo.haslo from klient, haslo where klient.id_klienta=haslo.id_klienta";

$szukaj = $wynik->query($zapytanie);

$ile_znalezionych = $szukaj->num_rows;

echo '<p>Ilość znalezionych pozycji: '.$ile_znalezionych.'</p>';

for ($i=0; $i<$ile_znalezionych; $i++)
{
$wiersz = $szukaj->fetch_assoc();
echo '<p><strong>'.($i+1).'. Nazwisko: ';
echo stripslashes($wiersz['nazwisko']);
echo '</strong><br /> Login: ';
echo stripslashes($wiersz['login']);
echo '<br />Hasło: ';
echo stripslashes($wiersz['haslo']);
echo '<br />';
echo '</p>';
}
$wynik->close();
}
else
{
echo 'Rejestracja powiodła się. Gratuluję';

$zapytanie = "select klient.nazwisko, klient.imie, klient.miejscowosc from klient";
$szukaj = $wynik->query($zapytanie);

$ile_znalezionych = $szukaj->num_rows;
echo '<p>Ilość znalezionych pozycji: '.$ile_znalezionych.'</p>';
for ($i=0; $i<$ile_znalezionych; $i++)
{
$wiersz = $szukaj->fetch_assoc();
echo '<p><strong>'.($i+1).'. Nazwisko: ';
echo stripslashes($wiersz['nazwisko']);
echo '</strong><br /> Imię: ';
echo stripslashes($wiersz['imie']);
echo '<br />Miejscowość: ';
echo stripslashes($wiersz['miejscowosc']);
echo '<br />';
echo '</p>';
}

//$szukaj->free();
$wynik->close();


}
?>
</body>
</html>


Tak to wygląda. W czym może być problem, że nie widzi danych z formularza. Dodam, że działam na serwerze wirtualnym ovh.pl. Bardzo proszę o pomoc.
b_chmura
sprawdź sobie czy w zmiennej _POST coś jest

  1. <?php
  2. echo '<pre>';
  3. print_r($_POST);
  4. echo '</pre>';
  5. ?>


wstaw to zamiast tego Twojego "//dla sprawdzenia czy plik pobiera dane"

i ewentualnie sprawdź to zapytanie:
  1. <?php
  2. $zapytanie = "INSERT INTO `klient` VALUES ('".$nazwisko."', '".$imie."', '".$kod_pocztowy."', '".$miejscowosc."', '".$ulica."', '".$nr_domu."', '".$nr_mieszkania."', '".$nr_tel_stac."', '".$nr_tel_kom."', '".$mail."', '".$nr_gg."');";
  3. ?>


i używaj poprawnego bbcode
bassyl
Wyświetla mi po zastosowaniu
Cytat
echo '<pre>';print_r($_POST);echo '</pre>';
:

Cytat
Array
(
[login] => login
[haslo] =>
[haslo_powt] =>
[imie] => Sylwek
[nazwisko] =>
[miejscowosc] =>
[kod_pocztowy] =>
[ulica] =>
[nr_domu] =>
[nr_mieszkania] =>
[nr_tel_stac] =>
[nr_tel_kom] =>
[nr_gg] =>
[mail] =>
[submit] => Wyślij
)


Czy nie powinnem przypisywać zmienne z tej tablicy w taki sposób:

Kod
$login = $_POST[login];
$haslo = $_POST[haslo];

Tak mi się zdaje. zaraz sprawdzę.

--------------------------------------------

Tak, to taki był myk. Stosowanie zapisu krótkich nazw zmiennych w tym formacie rozwiązuje problem:

Kod
$login = $_POST[login];
$haslo = $_POST[haslo];


Dzięki za pomoc. Jakby nie tablicowanie zmiennych to tak szybko bym na to nie wpadł ;-)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.