PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   MySQLi/PDO/(MySQL) (http://www.selfphp.de/forum/forumdisplay.php?f=22)
-   -   Denkfehler mysql_query (UPDATE) in for schleife (http://www.selfphp.de/forum/showthread.php?t=26112)

roki100 27.02.2018 00:16:58

Denkfehler mysql_query (UPDATE) in for schleife
 
Hallo Allerseits,

folgendes Problem:

PHP-Code:

$nr 10
$nr_start mysql_query("SELECT nr FROM `tabelle` WHERE nr=$nr");

// Ende ermitteln. Ende ist  NR: 20
$nr_ende mysql_query("SELECT nr FROM `tabelle` ORDER BY nr DESC LIMIT 1");

$nr_ab mysql_fetch_row($nr_start);
$nr_bis mysql_fetch_row($nr_ende);

for (
$i=$nr_ab[0];$i<=$nr_bis[0]+1$i++)
{
    
$ok mysql_query("UPDATE `tabelle` SET `nr` = nr + 1 WHERE nr = $i ");
    
    if (!
$ok)
    {
    die(
'Error: '.mysql_error());
    }
    


Tabelle hat in der Spalte "nr", fortlaufende Nummer 10 bis 20. Wenn ich versuche Nr 10 hinzuzufügen, dann um + 1 hoch zählen.
Aus 10-20 soll 10-21 werden bzw. 10 nach unten verschieben, daraus wird dann 11 und die Zahlen danach ebenso um +1. Es klappt aber nicht. Wo liegt das Problem? :/

chorn 27.02.2018 07:21:28

AW: Denkfehler mysql_query (UPDATE) in for schleife
 
nix verstanden.

vt1816 27.02.2018 10:01:26

AW: Denkfehler mysql_query (UPDATE) in for schleife
 
Zitat:

Zitat von roki100 (Beitrag 149569)
[..]
PHP-Code:

$nr 10
$nr_start mysql_query("SELECT nr FROM `tabelle` WHERE nr=$nr"); 


Wenn nr = $nr sein soll, wozu dann noch die Query?

Zitat:

Zitat von roki100 (Beitrag 149569)
[..]
PHP-Code:

// Ende ermitteln. Ende ist  NR: 20
$nr_ende mysql_query("SELECT nr FROM `tabelle` ORDER BY nr DESC LIMIT 1"); 


Wieso arbeitetst Du hier nicht mit Minimum und/oder Maximum?

Zitat:

Zitat von roki100 (Beitrag 149569)
[..]
PHP-Code:

$nr_ab mysql_fetch_row($nr_start);
$nr_bis mysql_fetch_row($nr_ende); 


Wozu, da Du ja nur ein Feld abfragst?

Ist `nr` in Deiner tabelle evtl. ein autoincrement Wert?

Und noch besser find ich das kaum einer dran denkt vielleicht mal nen
SHOW CREATE TABLE tabellenname mit Testdaten zu liefern. Wir die helfen bauen uns die
sicher lieber selber, oder nein wir machen das ja im Kopf weil wir die Doku ja kennen.

Arbeite zukünftig nicht mehr mit mysql. Verwende mysqli oder PDO.


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:35:30 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.