[php] mysql_fetch_object

Pagina: 1
Acties:

  • ikker
  • Registratie: Oktober 2001
  • Laatst online: 02-09 16:30

ikker

No Risk No Pain No Fun!!!

Topicstarter
heb het volgende stukje source
PHP:
1
2
3
4
5
6
<?
  global $title, $koptekst, $achtergrond_kleur, $tekst_kleur, $link_kleur, $host, $database, $user, $password;
  $temp = "SELECT MAX(softid) FROM softid_tbl";
  $temp2 = mysql_query($temp);
  $softid = mysql_fetch_object($temp2);
?>

als ik nu bv:
PHP:
1
2
3
<?
echo $softid;
?>

doe dan krijg ik de waarde object.
maar als ik in de database kijk moet het toch echt de waarde 1 hebben.......
kan iemand me vertellen wat ik fout doe.....zit er al een dag mee te k*tten en wordt er een beetje :r van
zeg maar

Mijn netwerkje


  • chris
  • Registratie: September 2001
  • Laatst online: 11-03-2022
wat dacht je van:
PHP:
1
2
3
4
5
6
<?
  global $title, $koptekst, $achtergrond_kleur, $tekst_kleur, $link_kleur, $host, $database, $user, $password;
  $temp = "SELECT MAX(softid) as blaat FROM softid_tbl";
  $temp2 = mysql_query($temp);
  $softid = mysql_fetch_object($temp2);
?>

Nou doe je
PHP:
1
2
3
<?
echo $softid->blaat;
?>

  • TheDane
  • Registratie: Oktober 2000
  • Laatst online: 12:07

TheDane

1.618

Op donderdag 22 november 2001 09:38 schreef ikker 't een en ander
this should do it:
PHP:
1
2
3
4
5
<?
  $temp = "SELECT MAX(softid) as softid FROM softid_tbl";
  $temp2 = mysql_query($temp);
  $softid = mysql_fetch_object("softid");
?>

in jouw geval probeer je 't object te fetchen, maar je wil 't resultaat als object fetchen, dus moet je even specificeren welk resultaat; namelijk softid

  • RdeTuinman
  • Registratie: Mei 2001
  • Laatst online: 16-08 07:25
probeer eens:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
<?
$SQL = "SELECT
             MAX(softid) AS waarde
        FROM
             softid_tbl";

$result = mysql_query($SQL);

$row = mysql_fetch_object($result);

echo $row->waarde;
?>

Gebruik dus ook duidelijke variabelnamen en zo spreek je dat object aan.

Kijk ook eens naar print_r

edit:

Te laat

  • ikker
  • Registratie: Oktober 2001
  • Laatst online: 02-09 16:30

ikker

No Risk No Pain No Fun!!!

Topicstarter
Thnx dat werkt :)

maar nu blijf ik dus met een ander probleem zitten. :(
Als ik nu deze waarde wil ophogen geeft hij een foutmelding
de hele source ziet er als volgt uit
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
<?
##########################################################
################### User variables #######################

## $title is de titel van het document
$title = "Toevoegen en verwijderen van software";

## $koptext is de tekst die bovenaan de pagina wordt getoont
$koptekst = "*** Toevoegen en verwijderen van software ***";

## $achtergrond_kleur........ duh
$achtergrond_kleur = "#6666CC";

## $tekst_kleur........ duh
$tekst_kleur = "#FFFFFF";

## $link_kleur is de kleur van een (hyper)link
$link_kleur = "#6699FF";

## $host is de server waar de MySQL database opstaat
## Meestal hoeft dit niet te worden veranderd
$host = "localhost";

## $database is de naam van de database waar de gegevens in staan
## Meestal hoeft dit niet te worden veranderd
$database = "incident";

## $user is de gebruikersnaam voor de toegang tot de MySQL database
$user = "lars";

## $password is het wachtwoord voor de $user
$password = "";

################## End user variables ####################
##########################################################
?>

<?php  
###### Connectie maken de database
  $link = mysql_pconnect($host,$user,$password);
  mysql_select_db($database);
###### Connectie gemaakt
?>

<?php
  global $title, $koptekst, $achtergrond_kleur, $tekst_kleur, $link_kleur, $host, $database, $user, $password;
  $temp = "SELECT MAX(softid) as softid FROM softid_tbl";
  $temp2 = mysql_query($temp);
  $softid = mysql_fetch_object($temp);
?>

<?PHP
  if ($blaat) {
    echo $softid;
    list($pakkettitel, $versie) = explode(", ",$soft);
    $bl1st = "INSERT INTO softid_tbl VALUES ('','$softid','$pakkettitel','$versie')";
    mysql_query($bl1st);
  }
  if ($verwijderen) {
    list($softid, $pakkettitel, $versie) = explode(", ",$geselecteerd);
    $ges1st = "DELETE FROM softid_tbl WHERE softid = '$softid' AND pakkettitel = '$pakkettitel' AND versie = '$versie'";
    mysql_query($ges1st);
  }
  if ($klaar) {
    $softid = $softid + 1;
    } 

?>

<HTML>
<HEAD>
  <TITLE><?php echo $title; ?></TITLE>
</HEAD>
<BODY BGCOLOR="<?php echo $achtergrond_kleur ?>" TEXT="<?php echo $tekst_kleur ?>" LINK="<?php echo $link_kleur; ?>" VLINK="<?php echo $link_kleur; ?>">
  <FONT FACE="Arial">
  <CENTER><FONT SIZE="5" FACE="Arial"><SPAN style="background-color: #3333FF">&amp;nbsp;<?php echo "$koptekst"; ?>&amp;nbsp;</SPAN></FONT></CENTER>
  <FORM action="soft2.php">
  <TABLE WIDTH="50%" ALIGN="center" BORDER="1" CELPADDING="5" cellspacing="2">
    <TR>
      <TD align="center">
        Bischikbare titels:
      </TD>
      <TD>
      </TD>
      <TD align="center">
        Geselecteerde softwaretitels:
      </TD>
      <TD>
      </TD>
    <TR>
      <td align="center"><select multiple name="soft" size="10">
          <?php
         $query2 = "SELECT * FROM software_tbl ORDER BY pakkettitel,versie DESC";
         $result = mysql_query($query2);
         
         for ($i = mysql_num_rows($result) - 1; $i >=0; $i--) {
         if (!mysql_data_seek($result, $i)) {
            printf ("Cannot seek to row %d\n", $i);
             continue; 
           }

          if (!($row = mysql_fetch_object($result)))
              continue;
  
            printf ("<OPTION VALUE=\"$row->pakkettitel, $row->versie\">%s  %s ", $row->pakkettitel, $row->versie);
           } 
         ?>
      </TD>     
      <TD align=center>     
         <INPUT TYPE="submit" NAME="blaat" VALUE=" ->> ">
      </TD>
      
      <TD align=center><select multiple name="geselecteerd" size="10">
            <?php  
         $query2 = "SELECT * FROM softid_tbl WHERE softid = '$softid' ORDER BY softid,pakkettitel,versie DESC";
         $result = mysql_query($query2);
         
         for ($i = mysql_num_rows($result) - 1; $i >=0; $i--) {
         if (!mysql_data_seek($result, $i)) {
            printf ("Cannot seek to row %d\n", $i);
             continue; 
           }

          if (!($row = mysql_fetch_object($result)))
              continue;
  
            printf ("<OPTION VALUE=\"$row->softid, $row->pakkettitel, $row->versie\">%s  %s  %s", $row->softid, $row->pakkettitel, $row->versie);
           } 
         ?>
      </TD>     
      <TD align="center">     
         <INPUT TYPE="submit" NAME="verwijderen" VALUE="verwijderen">
      </TD>
    </TR>
  </TABLE>    
  <TABLE WIDTH="64%" ALIGN="center" BORDER="1" CELPADDING="5" cellspacing="2">  
    <TR>
      <TD align="center">
        <INPUT TYPE="submit" NAME="klaar" VALUE="klaar">
      </TD>
    </TR>
  </TABLE>    
  
  <?php
    mysql_close($link);
  ?> 
?>

Ik zit geloof ik ergens een hele grote denkfout te maken maar het geen idee waar

Mijn netwerkje


  • wasigh
  • Registratie: Januari 2001
  • Niet online

wasigh

wasigh.blogspot.com

wat is de foutmelding die je krijgt?

  • chris
  • Registratie: September 2001
  • Laatst online: 11-03-2022
PHP:
1
2
3
<?
$query="SELECT max(softid)+1 as softid FROM softid_tbl";
?>

Zo hoog je de waarde van softid eentje op

  • ikker
  • Registratie: Oktober 2001
  • Laatst online: 02-09 16:30

ikker

No Risk No Pain No Fun!!!

Topicstarter
wat hij nu dus doet is nog steeds niet goed.
als ik nu waarden van de ene kolom naar de andere kolom ga brengen gebruikt hij nog steeds "softid = 0" hoewel aan het hij uit de database zou hebben moeten halen dat "softid = 1"
en zodra de knop klaar is ingedrukt moet softid worden opgehoogd met 1 dus dan wordt het eerst "softid = 2".
alleen dit alles doet hij dus niet.
maar een echte foutmelding geeft hij ook niet

Mijn netwerkje


  • ikker
  • Registratie: Oktober 2001
  • Laatst online: 02-09 16:30

ikker

No Risk No Pain No Fun!!!

Topicstarter
Op donderdag 22 november 2001 10:02 schreef dev-null het volgende:
PHP:
1
2
3
<?
$query="SELECT max(softid)+1 as softid FROM softid_tbl";
?>

Zo hoog je de waarde van softid eentje op
als ik dit heb gedaan werkt het nog steeds niet beter
helaas ;(

hij geeft dan opeens weer de waarde Object weer.
ik snap er echt geen ruk meer van |:( |:( |:(

ook blijft hij maar de waarde 0 gebruiken als ik iets invoer

Mijn netwerkje


  • ikker
  • Registratie: Oktober 2001
  • Laatst online: 02-09 16:30

ikker

No Risk No Pain No Fun!!!

Topicstarter
niemand meer een idee?

Mijn netwerkje


  • wasigh
  • Registratie: Januari 2001
  • Niet online

wasigh

wasigh.blogspot.com

Je eigen topic omhoog schoppen binnen een dag wordt niet gewaardeerd. Wacht rustig af en pas eventueel de vraag aan.

  • TheDane
  • Registratie: Oktober 2000
  • Laatst online: 12:07

TheDane

1.618

lees reactie van rdetuinman,. that's the way om die waarde uit je db te halen
PHP:
1
2
3
4
<?
$softid = $row->waarde;
$softid++;
?>

en zo hoog je'm op.

  • ikker
  • Registratie: Oktober 2001
  • Laatst online: 02-09 16:30

ikker

No Risk No Pain No Fun!!!

Topicstarter
wasigh: ik was me hier niet van bewust :? ....mijn excuses

ik ben hem maar weer opnieuw aan het maken maar loop weer op problemen.
kan iemand mij de volgende fout uitleggen?
Warning: Supplied argument is not a valid MySQL result resource in /usr/local/share/doc/apache/lars/test/test.php on line 48
hier lijn 46 t/m 49
PHP:
1
2
3
4
5
6
<?
  global $title, $koptekst, $achtergrond_kleur, $tekst_kleur, $link_kleur, $host, $database, $user, $password;
  $result = mysql_query($sql);
  $row = mysql_fetch_object($result);
  $softid = $row->waarde;
?>

Mijn netwerkje


  • tomato
  • Registratie: November 1999
  • Niet online
code:
1
echo mysql_error();

  • ikker
  • Registratie: Oktober 2001
  • Laatst online: 02-09 16:30

ikker

No Risk No Pain No Fun!!!

Topicstarter
bij deze laat ik ook jullie even de oplossing zien die gevonden is voor het probleem
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
<?
##########################################################
################### User variables #######################

## $title is de titel van het document
$title = "Toevoegen en verwijderen van software";

## $koptext is de tekst die bovenaan de pagina wordt getoont
$koptekst = "*** Toevoegen en verwijderen van software ***";

## $achtergrond_kleur........ duh
$achtergrond_kleur = "#6666CC";

## $tekst_kleur........ duh
$tekst_kleur = "#FFFFFF";

## $link_kleur is de kleur van een (hyper)link
$link_kleur = "#6699FF";

## $host is de server waar de MySQL database opstaat
## Meestal hoeft dit niet te worden veranderd
$host = "localhost";

## $database is de naam van de database waar de gegevens in staan
## Meestal hoeft dit niet te worden veranderd
$database = "incident";

## $user is de gebruikersnaam voor de toegang tot de MySQL database
$user = "lars";

## $password is het wachtwoord voor de $user
$password = "";


################## End user variables ####################
##########################################################
?>

<?php  
###### Connectie maken de database
  $link = mysql_pconnect($host,$user,$password);
  mysql_select_db($database);
###### Connectie gemaakt
?>

<?php
    global $title, $koptekst, $achtergrond_kleur, $tekst_kleur, $link_kleur, $host, $database, $user, $password;
    // Als softid niet meegegeven is, dan halen we MAX(softid) op
    if(!isset($softid) || ($softid == "")) {
        $sql        = "SELECT MAX(softid) AS waarde,COUNT(code) AS teller FROM softid_tbl";
        $result        = mysql_query($sql);
        $row        = mysql_fetch_object($result);
        $softid        = $row->waarde;
        // Even bepalen of er al records zijn
        $row_count    = $row->teller;
        // Als er al records zijn _en_ softid niet 0 is (aan het begin), even verhogen voor de volgende computer
        if(($row_count > 0) &amp;&amp; ($softid != 0)) {
            $softid++;
        }
    }
?>

<?PHP
  if ($blaat) {
    $sql = "SELECT MAX(softid) as softid FROM softid_tbl";
    $result = mysql_query($sql);
    $row = mysql_fetch_object($result);
    list($pakkettitel, $versie) = explode(", ",$soft);
    $bl1st = "INSERT INTO softid_tbl VALUES ('','$softid','$pakkettitel','$versie')";
    mysql_query($bl1st);
  }
  if ($verwijderen) {
    list($softid, $pakkettitel, $versie) = explode(", ",$geselecteerd);
    $ges1st = "DELETE FROM softid_tbl WHERE softid = '$softid' AND pakkettitel = '$pakkettitel' AND versie = '$versie'";
    mysql_query($ges1st);
  }
  if ($klaar) {
    $softid++;
    } 
?>

<HTML>
<HEAD>
  <TITLE><?php echo $title; ?></TITLE>
</HEAD>
<BODY BGCOLOR="<?php echo $achtergrond_kleur ?>" TEXT="<?php echo $tekst_kleur ?>" LINK="<?php echo $link_kleur; ?>" VLINK="<?php echo $link_kleur; ?>">
  <FONT FACE="Arial">
  <CENTER><FONT SIZE="5" FACE="Arial"><SPAN style="background-color: #3333FF">&amp;nbsp;<?php echo "$koptekst"; ?>&amp;nbsp;</SPAN></FONT></CENTER>
  <FORM action="soft2-new.php">
  <INPUT TYPE="HIDDEN" NAME="softid" VALUE="<?php echo $softid; ?>">
  <TABLE WIDTH="50%" ALIGN="center" BORDER="1" CELPADDING="5" cellspacing="2">
    <TR>
      <TD align="center">
        Bischikbare titels:
      </TD>
      <TD>
      </TD>
      <TD align="center">
        Geselecteerde softwaretitels:
      </TD>
      <TD>
      </TD>
    <TR>
      <td align="center"><select multiple name="soft" size="10">
          <?php
         $query2 = "SELECT * FROM software_tbl ORDER BY pakkettitel,versie DESC";
         $result = mysql_query($query2);
         
         for ($i = mysql_num_rows($result) - 1; $i >=0; $i--) {
         if (!mysql_data_seek($result, $i)) {
            printf ("Cannot seek to row %d\n", $i);
             continue; 
           }

          if (!($row = mysql_fetch_object($result)))
              continue;
  
            printf ("<OPTION VALUE=\"$row->pakkettitel, $row->versie\">%s  %s ", $row->pakkettitel, $row->versie);
           } 
         ?>
      </TD>     
      <TD align=center>     
         <INPUT TYPE="submit" NAME="blaat" VALUE=" ->> ">
      </TD>
      
      <TD align=center><select multiple name="geselecteerd" size="10">
            <?php  
         $query2 = "SELECT * FROM softid_tbl WHERE softid = '$softid' ORDER BY softid,pakkettitel,versie DESC";
         $result = mysql_query($query2);
         
         for ($i = mysql_num_rows($result) - 1; $i >=0; $i--) {
         if (!mysql_data_seek($result, $i)) {
            printf ("Cannot seek to row %d\n", $i);
             continue; 
           }

          if (!($row = mysql_fetch_object($result)))
              continue;
  
            printf ("<OPTION VALUE=\"$row->softid, $row->pakkettitel, $row->versie\">%s  %s  %s", $row->softid, $row->pakkettitel, $row->versie);
           } 
         ?>
      </TD>     
      <TD align="center">     
         <INPUT TYPE="submit" NAME="verwijderen" VALUE="verwijderen">
      </TD>
    </TR>
  </TABLE>    
  <TABLE WIDTH="64%" ALIGN="center" BORDER="1" CELPADDING="5" cellspacing="2">  
    <TR>
      <TD align="center">
        <INPUT TYPE="submit" NAME="klaar" VALUE="klaar">
      </TD>
    </TR>
  </TABLE>    
  
  <?php
    echo $softid;
    mysql_close($link);
  
  ?> 
?>

het is dus gelukkig toch mogelijk :*

Mijn netwerkje


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Op donderdag 22 november 2001 09:46 schreef TheDane het volgende:
this should do it:
PHP:
1
2
3
4
5
<?
  $temp = "SELECT MAX(softid) as softid FROM softid_tbl";
  $temp2 = mysql_query($temp);
  $softid = mysql_fetch_object("softid");
?>

in jouw geval probeer je 't object te fetchen, maar je wil 't resultaat als object fetchen, dus moet je even specificeren welk resultaat; namelijk softid
euhhh ook voor jou even een verwijzing naar de manual:
http://php.nederland.net/mysql_fetch_object

ikker:
Zulke lappen code kun je misschien beter even ergens uploaden en inzichtelijk maken, en een linkje plaatsen... dit is een beetje een layout fuck-up ;)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • TheDane
  • Registratie: Oktober 2000
  • Laatst online: 12:07

TheDane

1.618

Op donderdag 22 november 2001 16:22 schreef drm het volgende:

[..]

euhhh ook voor jou even een verwijzing naar de manual:
http://php.nederland.net/mysql_fetch_object
euh, zja, 't was ochtend & zo recht uit 't hoofdje ..
ik gebruik tegenwoordig alleen nog maar phplib, en dan heb je niet meer al die connect/fetch muk ;)
Pagina: 1