Avatar billede Slettet bruger
25. december 2014 - 23:00 Der er 17 kommentarer og
1 løsning

Udtræk af phpmyadmin

Er igang med at rode lidt med php og jeg er kommet så langt at jeg kan ænder nogle data i phpmyadmin, men jeg vil også gerne have trukket dataene ud igen. Men her har jeg så et problem med at trække det ud.

Denne ænder mine data oplysninger

mysql_query("UPDATE `compute7_fusion265`.`fusions46412h_users` SET `user_groups` = '.3' WHERE `fusions46412h_users`.`user_id` = 1");



Og denne skulle trække det ud og vise det, men intet held.

mysql_query("SELECT `fusions46412h_users` FROM `compute7_fusion265` WHERE `user_groups`");

Nogle som kan hjælpe her?
25. december 2014 - 23:30 #1
WHERE `user_groups` = hvad?  Hvad er det du vil se?  Hvis det er de data du lige har updaterede, så skriv:

....WHERE `user_groups` = '3'
Avatar billede Slettet bruger
25. december 2014 - 23:34 #2
Jeg har nu ændret det til

mysql_query("SELECT `fusions46412h_users` FROM `compute7_fusion265` WHERE `user_groups` = '3'");

Men intet bliver vist på siden.
Avatar billede michael_stim Ekspert
25. december 2014 - 23:44 #3
WHERE `user_groups` = '.3'
Avatar billede Slettet bruger
25. december 2014 - 23:56 #4
Ja den fejl burde jeg selv have spottet. Men er rettet. Men stadig intet bliver vist.
26. december 2014 - 10:34 #5
Jeg ville jo så nok, efter updaten, prøve at gå direkte ind i tabellen i phpmyadmin, for eksempel SELECT * FROM compute7_fusion265 WHERE user_id = 1 for at konstatere, at der rent faktisk findes rækker med user_id = 1 og at user_groups er blevet opdateret til .3

Hvis det giver det ønskede resultat, så kunne du jo prøve at få en fejlmelding ved at bruge

mysql_query("SELECT `fusions46412h_users` FROM `compute7_fusion265` WHERE `user_groups` = ',3'") or die(mysql_error());
Avatar billede olsensweb.dk Ekspert
26. december 2014 - 11:16 #6
er fusions46412h_users en tabel eller en collonne ??
i din opdate ser det ud til at være et tabel,
og i din select ser det ud til at være en collonne

i din update `compute7_fusion265`.`fusions46412h_users` =>database.tabel

UPDATE tabel SET collonne1=zzz, colllonne2=yyyy WHERE collonne_id=xxx

SELECT collonne FROM tabel WHERE collonne_id =xxx

-> alle collonner fra tabellen
SELECT * FROM tabel WHERE collonne_id =xxx

men prøv denne

SELECT *  FROM `compute7_fusion265`.`fusions46412h_users` WHERE `user_groups`='.3'


NB: ref http://php.net/mysql_connect
     
Warning
This extension is deprecated as of PHP 5.5.0, and will be removed in the future. Instead, the MySQLi or PDO_MySQL extension should be used. See also MySQL: choosing an API guide and related FAQ for more information



men ja prøv det af i phpmyadmin, og når det virker der så i php
Avatar billede Slettet bruger
26. december 2014 - 14:59 #7
#5 Fejl meldingen kom frem, med at den ment det ikke eksisteret, men ændret i til #6 opslag. Så nu sker der noget.
Avatar billede Slettet bruger
26. december 2014 - 15:01 #8
#6

Din SELECT *  FROM `compute7_fusion265`.`fusions46412h_users` WHERE `user_groups`='.3'
Fungere her. Men desværre ikke det ønsket resultat, den viser dette istedet "Resource id #36"

Og dette resultat skulle den ikke vise den skulle jo vise at det her ".3"

Det burde ikke være pga af den har et punktum? ". 3"? Som kan forvirre den med at den skriver "36" istedet?
Avatar billede olsensweb.dk Ekspert
26. december 2014 - 16:00 #9
kan du ikke lige dumpe/exportere din fusions46412h_users tabel (max 5 rows) fra phpmyadmin ??
hvordan udskriver du det i php ??

>Det burde ikke være pga af den har et punktum?
normalt er punktum er sammensætnings operator af to stringe i php, og sammensætning af database.tabel.collonne i sql, men det ser mystisk ud, og har aldrig anvendt det i en where betingelse som du gør

nedenstående code er utested

din udskrivning kunne ligne noget ala dette (mysqli procedural style)

$sql = "SELECT *  FROM compute7_fusion265.fusions46412h_users WHERE user_groups='.3'";
$rs = mysqli_query($conn, $sql);   
$row = mysqli_fetch_assoc($rs); // forvendter kun 1 linje
print_r($row);   


i det gamle API som du anvender, ser det sådan ud

$sql = "SELECT *  FROM compute7_fusion265.fusions46412h_users WHERE user_groups='.3'";
$rs = mysql_query($sql);   
$row = mysql_fetch_assoc($rs); // forvendter kun 1 linje
print_r($row);   


eller sådan   

$sql = "SELECT *  FROM compute7_fusion265.fusions46412h_users WHERE user_groups='.3'";
$rs = mysql_query($sql, $conn);   
$row = mysql_fetch_assoc($rs); // forvendter kun 1 linje
print_r($row);   

afhænig af om du har navngiven din database connection
Avatar billede Slettet bruger
26. december 2014 - 16:25 #10
#9

Vil godt give dig ret i at det ser lidt underligt ud med at der er et . efter 3. ".3" Men det er PHP Fusion som er baseret på denne måde med gruppe opsætning. ".1.2.3.4.5.6" så derfor ".3"

Men lidt fra databsen.
user_group:.3
user_level: 103
user_status: 0
user:actiontime: 0
user_theme: Default
Avatar billede Slettet bruger
26. december 2014 - 16:25 #11
ikke efter ment før 3. ".3"
Avatar billede Slettet bruger
26. december 2014 - 16:35 #12
Men det skal også lige siges, at det ikke meget data der haves, det eneste jeg søger er bare lige at den skal trække det ud. En jeg har som hjælper mig lidt med php men han kan ikke huske hvad der skal gøres mere her for at trække ud. der bliver ikke brugt nogle form for $row. $id. Eller anden form.
Avatar billede Slettet bruger
26. december 2014 - 17:50 #13
Problemet er vist løst nu.

Fejlen var at siden manglet.

$servername = "localhost";
$username = "compute7_fusion265";
$password = "XXXXX";
$dbname = "compute7_fusion265";

Her ment vi så begge to at den får disse oplysninger via

"require_once"

som er i php siden. Men nej gjorde den så åben bart ikke når man selv skulle tilføje det manuelt her.

Efter jeg tilføjet dette, og lidt mere til så virket det og viste persidst det jeg ønsket.
Avatar billede showsource Seniormester
28. december 2014 - 21:26 #14
madsls ->

Tjek lige denne guide:
http://www.eksperten.dk/guide/1480
Avatar billede olsensweb.dk Ekspert
29. december 2014 - 12:34 #15
det er korrekt at du bør kigge på perpare statement, men jeg vil kigge på det under PDO
linket som showsource henvisser til er en udemærket intro, men du vil nok ikke kunne anvende det under php-fusion

jeg ved ikke om php fussion understøtte mysqli men der stilles spørgsmål om det her i en 3 år gammel tråd. (tråden er stadig ubesvaret)
https://www.php-fusion.co.uk/forum/viewthread.php?thread_id=30990

ref https://www.php-fusion.co.uk/infusions/wiki/documentation.php?page=80
anvender de stadig det gamle API??, så er der et problem når php updateres, der udgår det gamle mysql API.

ref https://www.php-fusion.co.uk/infusions/wiki/documentation.php?page=23
     
General
License : AGPL
Programming Language : PHP 5
Data Management : MySQL
PDO & MySQL Database layer
IPv6 Support
XHTML 1.0 Valid
UTF-8
   

ref https://www.php-fusion.co.uk/news.php?readmore=594
     
Introducing PDO Functions - PHP-Fusion can now be run with full PDO support.
PDO provides a data-access abstraction layer, which means that, regardless of which database you"re using, you use the same functions to issue queries and fetch data.
The PHP Data Objects (PDO) extension defines a light-weight, consistent interface for accessing databases in PHP.
"PDO does not provide a database abstraction, it does not rewrite SQL or emulate missing features". Meaning that we still base our calls on MySQL.
   

perpare statement under PDO er efter min mening klart forbedret i forhold til mysqli
08. januar 2015 - 07:51 #16
madsls, kom du fra det igen?  Du sagde i #13, at problemet er løst.  Lukker du derfor tråden igen?  Bed om svar fra den eller de hvis indlæg har været til hjælp eller luk med eget svar.
Avatar billede showsource Seniormester
18. januar 2015 - 14:51 #17
ronols -> Ja, PDO ser jeg selv som "det bedste".

Nørder desværre ikke selv så meget mere, og da jeg tidligere kikkede på PDO forekom det mig temmelig langhåret!

Men lige præcis olebole's guide til mysqli fandt jeg nem og foreståelig, og i dag fatter jeg langt mere af det "langhårede" i PDO.
Fordi jeg lige var rundt om guiden til mysqli.

PDO er nok mere omstændeligt at kode, men samme kode virker til mange forskellige DB'er.
Og virker, på mig, mere "fremtidssikret" ???

Udover div. DB'er som kan bruges med PDO, er der så andre "fordele", som gør det bedre end mysqli ?
23. januar 2015 - 09:05 #18
Som aftalt andetstedes, svar fra mig.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester