Just nu i M3-nätverket
Gå till innehåll

Hjälp ;)


DNAGoa

Rekommendera Poster

När jag använder denna kod så får jag bara upp den sista print sasten, men PHP acceptera det men jag kan inte få Admin även fast databasen är satt på 2!

 

<?php if ($conn["typ"] == "2"):

echo "Admin";

elseif ($conn["typ"] == "1"):

echo "Det andra";

else:

echo "Vanlig";

endif; ?>

 

 

People can be stupid... but never to stupid!

 

Länk till kommentar
Dela på andra webbplatser

Du använder dig av konstig sats-syntax där.

Så här ska det vara:

<?php
if ($conn["typ"] == "2") echo "Admin";
else if ($conn["typ"] == "1") echo "Det andra";
else echo "Vanlig";
?>

 

det är inte Basic det här ;)

 

Länk till kommentar
Dela på andra webbplatser

Hmm... Efter att kollat i manualen måste jag hålla med Bj0rn (dock kände jag inte till just den syntaxen); det borde fungera.

 

Men det underlättar om man använder sig av samma syntax jämt, istället för att konstra till det med sådan alternativ syntax.

Det bästa är ju att använda sig av "standarden".

 

[Redigering]

Jaha, nu hade Bj0rn tagit bort sitt inlägg...

Varför?

 

[inlägget ändrat 2003-01-15 22:34:33 av Cariad]

Länk till kommentar
Dela på andra webbplatser

Hrrmm, jadu.... jag är trött, och blev lite osäker om det verkligen fungerade att skriva på det sättet... hade för mig att jag har sätt det någonstans i manualen tidigare, men jag orkade inte kolla upp om mina påståenden var rätta, så jag fegade helt enkelt ur och tog bort mitt meddelande så att ingen skulle bli förvirrad om det var felaktigt! :)

 

Så kan det gå när man är trött...

 

--

Some say I am crazy.. but the Voices in my head disagree...

 

Länk till kommentar
Dela på andra webbplatser

Hrrmm, jag måste nog vara riktigt trött... är helt säker på att jag svarade på ditt inlägg där, men tydligen gjorde jag inte det. :)

 

Jobbigt att vara nära en release så man måste jobba häcken av sig...

 

--

Some say I am crazy.. but the Voices in my head disagree...

 

Länk till kommentar
Dela på andra webbplatser

Men jag kan fortvarande inte göra så, det kommer fram Vanligt igen fast databasen är på 2 i tabellen typ!!

 

Vad har jag gjort för fel, hjälp mig så är ni snälla ;)

 

Glömde jag säga att jag ansluter mig till databasen så här, men jag vet inte om det är rätt eller fel?

 

$conn = mysql_connect("$dbhost","$dbuser","$dbpass");

 

People can be stupid... but never to stupid!

 

[inlägget ändrat 2003-01-16 08:41:42 av DNAGoa]

Länk till kommentar
Dela på andra webbplatser

Pröva att skriva ut vad som finns innuti $conn['typ']. Kan det kanske vara så att du aldrig får en etta eller tvåa?

 

--

Some say I am crazy.. but the Voices in my head disagree...

 

Länk till kommentar
Dela på andra webbplatser

Okej så du menar en enkel sats som ser om det FINNS någogn information där??

 

Men skulle bara säga vet inte hur många gånger jag har sett i min databas och om inte hur många gånger jag har skrivit in en 2 eller 1 i typ tabellen!!

 

 

People can be stupid... but never to stupid!

 

Länk till kommentar
Dela på andra webbplatser

Skriv såhär i din kod för att se vad som finns innuti $conn['typ']:

 

echo $conn['typ'];

 

Att du har det i databasen måste ju inte hundraprocentigt betyda att databasen levererar det du ser i databasen.

 

--

Some say I am crazy.. but the Voices in my head disagree...

 

Länk till kommentar
Dela på andra webbplatser

Man tackar för hjälpen men nu har jag fixat allt, det var i tabel väljaren som det var fel på, du kan få en poäng av mig om du vill?

 

People can be stupid... but never to stupid!

 

Länk till kommentar
Dela på andra webbplatser

Tack för poängen! Det är alltid bra att skriva ut värdet man får ur en databas om en ifsträng inte lyckas, på det sättet får man lätt reda på om man har gjort något fel någonstans.

 

--

Some say I am crazy.. but the Voices in my head disagree...

 

Länk till kommentar
Dela på andra webbplatser

Det var verkligen roligt att göra, men det finns ett problem. Det som BjOrN sade funkade inte så bra, så du kommer se mer och mer färger i dom små rutorna ;)

 

echo $conn['typ']; funkar inte allas det står bara det sista talet i hela tabellen och jag vill ha en speciel typ-tabel från den användaren som loggar in, text Typ 2 är Admin, Typ 1 är User och slutligen typ 0 är Guest, alltså bara se på sakerna men inte röra/regigera sakerna ;)

 

People can be stupid... but never to stupid!

 

Länk till kommentar
Dela på andra webbplatser

Om du alltid får fram en nolla oavsett hur du gör så har du kanske nåt fel i SQL strängen? I princip kan det ju vara vilket fel som helst.

 

Om det står det sista talet som du har i tabellen så kan jag tänka mig att du helt enkelt bara returnerar all information som finns i tabellen, med till exempel select * from tabell utan någon where clause eller liknande.

 

Om du ger oss lite mer information om hur koden ser ut så kan vi kanske hjälpa dig med det.

 

--

Some say I am crazy.. but the Voices in my head disagree...

 

Länk till kommentar
Dela på andra webbplatser

Så här ser den ut i config.php filen, alltså där jag tar information från datatbasen!

 

<?php

 

// DATABASE CONNECTION INFORMATION

 

$dbhost = "localhost";

$dbuser = "test";

$dbpass = "";

$dbname = "kennel";

 

$tablename = "konton"; // NOT RECOMMENDED CHANGE, IF DO MUST EDIT sqlsetup.sql

 

 

// SITE INFORMATION

 

$site_title = "";

$url_to_secure = "../kennel/secure"; // DO NOT INCLUDE TRAILING SLASH!

$url_to_scripts = "../kennel"; // DO NOT INCLUDE TRAILING SLASH!

$admin_email = "dnagoa@hotmail.com";

 

/////////////////////////////////////////////

// DO NOT EDIT ANYTHING BELOW THIS LINE //

/////////////////////////////////////////////

 

function error_message($msg) {

echo "<script>alert(\"Error: $msg\");history.go(-1)</script>";

}

 

function alert_user($msg) {

echo "<script>alert(\"$msg\");</script>";

}

 

function alert_goto($msg, $url) {

echo "<script>alert(\"$msg\");location='$url'</script>";

}

 

$conn = mysql_connect("$dbhost","$dbuser","$dbpass");

 

if(!$conn) {

$error = mysql_error();

error_message("$error");

}

?>

 

People can be stupid... but never to stupid!

 

Länk till kommentar
Dela på andra webbplatser

Hrrmm, här finns ingen SQL sträng som du frågar databasen med. Däremot ser jag att $conn är variabeln som innehåller databasinloggningen.... Det verkar ju lite konstigt då du har $conn['typ'] som man kan tänka sig innehåller information från en databas. Det är förstås möjligt att du frågar databasen någon annanstans i koden...

 

Jag skulle vilja rekomendera dig att läsa på lite om hur man frågar databasen någonting på denna sida: http://www.php.net/manual/en/ref.mysql.php

 

Se det första exemplet på den sidan så ser du en komplett kod för att fråga en databas efter information.

 

--

Some say I am crazy.. but the Voices in my head disagree...

 

Länk till kommentar
Dela på andra webbplatser

Sulle bara säga detta jag fattar noll av såna manualer men tack ändå, men en sak jag inte fattar är att jag får fram namnet på den inloggade personen men inte typen, kanske är något fel i databasen men inte vet jag??

 

People can be stupid... but never to stupid!

 

Länk till kommentar
Dela på andra webbplatser

DNAGoa, jag vill absolut inte på något sätt vara elak mot dig, men jag tycker du ska fundera på att börja om lite från början med din PHP-programmering.

 

Man kan inte börja med lite mer avancerade saker innan man lärt sig de mest grundläggande först. Det är som att börja köra formel 1 bilar utan att först gått igenom teorin och lärt sig köra andra cartbilar, från go-cart och uppåt... ;)

 

Efter de inlägg jag sett dig skriva så kan jag konstatera att du har kopierat mycket av din kod, vilket absolut inte är en bra idé.

 

När man kopierar kod brukar man säga att man aldrig ska kopiera om man inte skulle ha skrivit en snarlik kod själv, samt att man är helt insatt i koden och förstår precis vad varje del gör.

Man får alltså bara kopiera kod, kod man skulle ha skrivit likadant själv, för att spara tid.

 

Vidare kan jag säga att en hel del av den kopierade kod jag sett dig använda är felaktig, gammal, eller innehåller säkerhetsbrister.

 

Jag hjälper gärna till med det mesta, på den nivå som frågeställaren är på (vare sig om det är en nybörjare eller expert), men om den man hjälper inte är så insatt i vad denne gör så kan man inte tillgodogöra sig den hjälpen på rätt sätt.

 

Mitt tips till dig idag är att du börjar från början och arbetar dig uppåt, utan att kopiera någon kod. Läs istället i manualen, en bok, eller fråga här om det är något du behöver hjälp med.

 

Vänta lite med de stora projekten, och ta en sak i taget. Allt måste få ta sin tid...

 

 

Länk till kommentar
Dela på andra webbplatser

Det ska jag komma ihåg, men jag tycker det är så tråkig att läsa allt igen, har redan läst en massa böcker men där står det inget om om hur man ska göra för att göra det och göra datt. Men nästan i varje bok så får man lära sig en massa onödiga grejer som att göra loppar med redan skrivna fuktioner().

 

Men det står inte så mycket om mysql databasen och PHP scripten i någon bok, det står det mest på internet och det kan du nog också säga.

 

Så nu kommer slut punkten, och det är att om man vill göra sidor utan att sitta vid datorn 24 timmar om dygnet utan att sidan som man ska visa är en liten community eller var det är så tycker jag det är onödigt att sitta så många timmar för att lära sig "grunderna" om och om igen, hellre lånar jag kod och inte minst sätter jag ihop dom med blandad resultat!

 

People can be stupid... but never to stupid!

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...