Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> problem z mysql :(
noose
post 30.07.2003, 07:46:35
Post #1





Grupa: Zarejestrowani
Postów: 95
Pomógł: 0
Dołączył: 30.07.2003
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


witam.
mam taki problemik. pisze male forum na wlasny uzytek. zrobilem plik ktory ma kasowac poszczegolne topici. zeby moc skasowac, skrypt kaze sie zalogowac. jezeli user jest w bazie to pozwala skasowac, jak nie to nie (chodzi o to, ze na razie tylko admini sa w mysql tongue.gif).. ale..... skrypt nic nie kasuje :?
o to ten plik

[php:1:6ea216e42f]<html>
<title>Kasowanie posta</title>
<body>
<?
echo("TOpic do skasowania ma ID: $id");
function logowanie() {
echo("<form method="POST">n
<h1> Zaloguj sie! </h1><br>n
User: <input type="text" name="login"><br>n
Pass: <input type="password" name="haslo"><br>n
<input type="submit" name="submit" value="Zaloguj">n<br>
<br>
</form>n");
}
include("config.cfg");
if(!isset($submit)) {logowanie();} else {
if(isset($submit)) {
$db=mysql_connect("$sql_host", "$sql_user", "$sql_pass");
mysql_select_db("forum", $db);
$sql="SELECT * FROM users WHERE user_name = '$login'";
$result=mysql_query($sql);
while($row = mysql_fetch_array($result))
{
$user_pass=$row["user_pass"];
$user_name=$row["user_name"];
$i=3;
while($i > 0)
{
if (($haslo != $user_pass) || ($login != $user_name))
{
echo("Zly login/pass");
logowanie();
echo("<br>Masz jeszcze $i prob");
$i--;
} else {
$sql2="DELTE FROM topici WHERE topic_id='$id'";
mysql_query($sql2);
echo("<br>Skasowano topic o ID: $id smile.gif");
echo("<br>$sql2");
$i=0;

}
}
}
}}
?>
</body>
</html>[/php:1:6ea216e42f]
aha winksmiley.jpg zmienna $id jest przekazywana w linku czyli
Kod
skasuj.php?id=COS_TAM
Go to the top of the page
+Quote Post
KaMeLeOn
post 30.07.2003, 07:50:22
Post #2





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Hmm... http://forum.php.pl/viewtopic.php?t=789


--------------------
"Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
Go to the top of the page
+Quote Post
scanner
post 30.07.2003, 07:51:05
Post #3





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




http://forum.php.pl/viewtopic.php?t=789

Pozatym wydaje mi się, że $id jest typu INT a zapis[sql:1:a8626e483b] = '$id'[/sql:1:a8626e483b]Przekonwertuje $id na stringa. A w tytm momencie int porównane do stringa... (nie pamiętam, czy MySQL konwertuje typy przy porównaniu).


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
noose
post 30.07.2003, 07:51:10
Post #4





Grupa: Zarejestrowani
Postów: 95
Pomógł: 0
Dołączył: 30.07.2003
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


no wlasnie nie :? to jest postawione na local host, zmienne globalne sa przekazywane.....
jakies inne sugestie :?:
Go to the top of the page
+Quote Post
noose
post 30.07.2003, 07:51:54
Post #5





Grupa: Zarejestrowani
Postów: 95
Pomógł: 0
Dołączył: 30.07.2003
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


Cytat
http://forum.php.pl/viewtopic.php?t=789

Pozatym wydaje mi się, że $id jest typu INT a zapis[sql:1:f88c5ab474] = '$id'[/sql:1:f88c5ab474]Przekonwertuje $id na stringa. A w tytm momencie int porównane do stringa... (nie pamiętam, czy MySQL konwertuje typy przy porównaniu).


a po ludzku :?:
Go to the top of the page
+Quote Post
KaMeLeOn
post 30.07.2003, 07:55:05
Post #6





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cytat
[...] (nie pamiętam, czy MySQL konwertuje typy przy porównaniu).

Konwertuje...
Cytat
to jest postawione na local host,

To nie ma znaczenia, dobrym zwyczajem jest używanie superglobali...
Cytat
a po ludzku

Wywal apostrofy...


--------------------
"Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
Go to the top of the page
+Quote Post
noose
post 30.07.2003, 07:58:28
Post #7





Grupa: Zarejestrowani
Postów: 95
Pomógł: 0
Dołączył: 30.07.2003
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


nie chodzi sad.gif

jak zrobic zmienne superglobalne :?:
Go to the top of the page
+Quote Post
KaMeLeOn
post 30.07.2003, 08:06:25
Post #8





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cytat
jak zrobic zmienne superglobalne :?:

Link wyżej...


--------------------
"Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
Go to the top of the page
+Quote Post
scanner
post 30.07.2003, 08:09:46
Post #9





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Cytat
Cytat
[...] (nie pamiętam, czy MySQL konwertuje typy przy porównaniu).
Konwertuje...
Będę pamiętał smile.gif


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
noose
post 30.07.2003, 08:16:17
Post #10





Grupa: Zarejestrowani
Postów: 95
Pomógł: 0
Dołączył: 30.07.2003
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


heh :?
po <? dodalem linijke
Kod
$HTTP_GET_VARS["id"];
ale nadal nie dziala :?
jakies sugestie :?:
Go to the top of the page
+Quote Post
scanner
post 30.07.2003, 08:17:12
Post #11





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Gdzie ją dodałeś, jak ją dodałeś?
najlepiej zamień wszytskie: $id na $_GET['id']


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
KaMeLeOn
post 30.07.2003, 08:18:46
Post #12





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cytat
po <? dodalem linijke
Kod
$HTTP_GET_VARS["id"];
ale nadal nie dziala :?

Że jak...?
Zamień wszystkie $id na $_GET['id'], albo chociaż daj na początku
[php:1:6eaf2621f5]<?php
$id = $_GET['id'];
?>[/php:1:6eaf2621f5]


--------------------
"Czerp z innych, ale nie kopiuj ich. Bądź sobą." Michel Quoist
Go to the top of the page
+Quote Post
noose
post 30.07.2003, 08:22:02
Post #13





Grupa: Zarejestrowani
Postów: 95
Pomógł: 0
Dołączył: 30.07.2003
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


jak by to powiedziec.... nadal nie kasuje :?
Go to the top of the page
+Quote Post
scanner
post 30.07.2003, 08:32:24
Post #14





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




[php:1:4310a6d3e6]
$sql2="DELTE FROM topici WHERE topic_id='$id'";
mysql_query($sql2);
[/php:1:4310a6d3e6]
a) Linijka 1: Co to jest "DELTE" ?
cool.gif linijka 2: [php:1:4310a6d3e6]<?php
mysql_query($sql2) or die( mysql_error () );
[/php:1:4310a6d3e6]


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
noose
post 30.07.2003, 08:52:45
Post #15





Grupa: Zarejestrowani
Postów: 95
Pomógł: 0
Dołączył: 30.07.2003
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


ciekawe ile bym nad tym siedzial, zanim bym doszedl ze to literowka winksmiley.jpg dzieki biggrin.gif:D
Go to the top of the page
+Quote Post
scanner
post 30.07.2003, 09:48:02
Post #16





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Następnym razem, stosuj zapis który podałem jako drugi - w podstawopwym zakresie powi Ci on, czy masz błąd w zapytaniu smile.gif


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 6.06.2025 - 12:16